문자열 vs String
C++ 에서는 string이라는 새로운 자료형을 사용하기 때문에 배열형태의 문자열을 잘 쓰지는 않을거지만,
C 에서는 문자형 배열 ( char str[] )을 선언해서 문자를 구현하는 방법 밖에 없다.
질문) 문자열에서는 띄어쓰기가 안된다는게 어떤걸 말하는 거였더라....
항상 주의해야할 포인트!
1) 문자열의 끝에는 \0 라는 null값이 들어있다
"Hello, world!" 뒤에는 문자열의 끝임을 의미하는 '/0' 이라는 null값이 마지막 인덱스에 들어있기 때문에 배열의 크기(길이)는 13이 아닌 14이다.
2) 입력받을때 주의
문자열을 입력받거나 출력 할때는 ' &s '가 아닌 ' s '여야 한다.
3)
#include <string.h>
: 문자열을 사용하려면 헤더파일을 추가해야함.
( C++에서 사용하는 <iostream>은 이 <string.h>를 이미 안에 포함하고 있어서 따로 추가하지 않아도 string을 사용할수 있다.)
strlen( )
: ( )안의 문자열의 길이를 반환한다.
위와 같이 string의 길이를 100으로 미리 정해져 있더라도 그 만들어진 문자열의 길이가 아닌,
문자열 중에서 정보가 들어있는 만큼의 길이를 제대로 알려준다.
strcpy( str2 ,str1 )
: str1에 있는 내용을 str2에게 복사를 시켜준다.
strcat ( str , "Hello" )
: str안의 정보 다음에 "Hello"가 이어서 덧붙여서 저장된다.
strcmp (str1, str2)
: 두 문자를 비교하는 함수. 사전적인 순서에서 누가 먼저인지도 확인할수 있다.
-1 : str1이 str2 보다 사전적으로 앞에 있을 때
0 : 둘이 같은 문자일때
1 : str이 str2 보다 사전적으로 뒤에 있을때
'C , C++' 카테고리의 다른 글
C_ 포인터와 배열의 관계 (수정중) (0) | 2020.06.07 |
---|---|
C_ 포인터 (0) | 2020.06.07 |
C_ C의 기본적인 틀 해석하기, C의 변수 종류s! (0) | 2020.06.04 |
C_ C와 C++의 차이, 실행시 창이 바로 꺼지는 현상 (0) | 2020.06.04 |
C_ 객체 란? SDL 이란? (0) | 2020.06.04 |