C++ Chapter 6.5 : C언어 스타일의 배열 문자열

Date:     Updated:

카테고리:

태그:

인프런에 있는 홍정모 교수님의 홍정모의 따라 하며 배우는 C++ 강의를 듣고 정리한 필기입니다. 😀
🌜 [홍정모의 따라 하며 배우는 C++]강의 들으러 가기!


C언어 스타일의 배열 문자열

  • char string[] = “Hello !”;
  • 문자열의 끝을 알 수 있도록 \0가 끝에 붙어있다.
    • 문자열이 6글자라도 sizeof 해보면 7이 나오는 이유.


문자열의 입력

std::cin

  • 공백 단위로 입력을 받기 때문에 공백 전까지만 받는다.
    • 따라서 cin에 “hello, world!”를 입력하면 “hello,”까지만 문자 배열에 대입된다.
char myString[255];  // 254개의 문자(char)가 들어갈 수 있는 배열

cin >> myString; // Jack 입력

myString[0] = 'A';  // Aack 으로 바뀜

std::cin.getline

cin.getline(myString, 255);

  • 공백이 포함된 문자열을 받으려면 cin.getline을 사용.
  • 두가지 매개변수가 필요하다.
    • 문자열을 저장할 char 타입의 배열 이름
    • 저장할 문자 최대 개수
  • 이 함수는 <iostream>에 있다.
    • <string> 라이브러리에 비슷한 함수인 std::getline도 있다.
      • <string>의 std::getline은 좀 더 세밀하게 문자열을 입력 받는다. 매개변수 4개까지도 받을 수 있음. 파일 입력 or 표준 입력 선택도 가능하고..


<cstring> 라이브러리에 있는 문자열 배열 조작 함수

  1. strcpy(A, B) : B문자열을 A문자 배열로 복사. A문자 배열의 크기가 모자를시 위험이 따른다.
  2. strcat(A, B) : B문자열 내용을 복사해 A문자 배열 뒤에 붙임
  3. strcmp(A, B) : 두 문자열이 같으면, 즉 배열의 원소들이 전부 같으면 0을 리턴한다. 크기 비교에 따라 -1, 1도 리턴.


🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우 
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄

맨 위로 이동하기

댓글남기기