C++ Chapter 6.5 : C언어 스타일의 배열 문자열
카테고리: Cpp
태그: Cpp Programming
인프런에 있는 홍정모 교수님의 홍정모의 따라 하며 배우는 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 표준 입력 선택도 가능하고..
- <string>의
- <string> 라이브러리에 비슷한 함수인
<cstring> 라이브러리에 있는 문자열 배열
조작 함수
- strcpy(A, B) : B문자열을 A문자 배열로 복사. A문자 배열의 크기가 모자를시 위험이 따른다.
- strcat(A, B) : B문자열 내용을 복사해 A문자 배열 뒤에 붙임
- strcmp(A, B) : 두 문자열이 같으면, 즉 배열의 원소들이 전부 같으면 0을 리턴한다. 크기 비교에 따라 -1, 1도 리턴.
🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄
댓글남기기