문자열
C언어에서는 큰따옴표(““)를 사용해 표현되는 문자열을 문자열 상수라고하며 C언어에서 문자열은 메모리에 저장된 일련의 연속된 문자들의 집합을 의미한다
문자열은 문자형 배열은 선언하여 사용 가능하다
코드
1
2
3
4
5
6
7
8
9
#include <stdio.h>
int main() {
char a[] = "나는 c언어가 좋아요";
printf("%s\n",a);
char b[18] = "I like c language";
printf("%s\n",b);
}
출력
1
2
나는 c언어가 좋아요
I like c language
종료 문자열
문자형 배열로 선언된 문자열 변수는 문자열의 끝을 알려주기 위해 문자열에 속한 데이터가 끝나면 문자열의 끝을 의미하는 문자를 하나 더 삽입한 것이다
이 문자를 널(NULL) 문자라고 하며 ‘\0’으로 표시하고 아스키코드값은 0이다
코드
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
int main() {
char null_1 = '\0';
char null_2 = 0;
char null_3 = (char)NULL;
char not_null = '0';
printf("NULL 의 정수(아스키)값 : %d, %d, %d \n", null_1, null_2, null_3);
printf("'0' 의 정수(아스키)값 : %d \n", not_null);
}
출력
1
2
NULL 의 정수(아스키)값 : 0, 0, 0
'0' 의 정수(아스키)값 : 48
위 코드를 뜯어보면
1
2
3
char null_1 = '\0';
char null_2 = 0;
char null_3 = (char)NULL;
이 3개는 모두 널 문자를 뜻하고
1
char not_null = '0';
이것은 문자 ‘0’을 뜻하니
널 문자열에 아스키 코드 값인 0이 3개 문자열 ‘0’에 아스키 코드 값이 48이 출력된 것이다