문자열 상수란?
- 문자열 상수란 큰따옴표( " " )로 묶은 하나 이상의 문자로 구성된 문자열을 의미한다.
다음의 예제를 통해 간단히 알아보도록 하자.
01: #include <stdio.h>
02: int main(void)
03: {
04: printf("문자열 상수는 %s입니다. \n", "A");
05: printf("문자열 상수는 %s입니다. \n", "10+10");
06: printf("문자열 상수는 %s입니다. \n", "Hi, everyone");
07:
08: return 0;
09: }
04행부터 06행까지 큰따옴표 안에 있는 문자, 숫자, 문자열은
서식문자 %s로 출력가능한 <문자열 상수>임을 기억하라!
컴파일러는 큰따옴표로 묶은 문자열상수를 저장할 때,
문자열상수 맨 마지막에 끝을 알리는 종료문자 \0(10진수 0을 의미)을 자동으로 추가한다.
이것을 우리는 NULL 문자라고 부른다.
04행을 자세히 살펴보자.
04: printf("문자열 상수는 %s입니다. \n", "A");
04행을 살펴보면, A는 한개의 문자이지만, 큰따옴표(" ")로 둘러싸여 있습니다.
그러면, A는 문자상수일까, 아니면 문자열상수일까?
결론 - A는 문자열 상수다.
그 이유는 큰따옴표를 인식한 컴파일러가 A끝에 종료문자(\0)를 자동으로 추가해
서식문자 %s로 출력하도록 하기 때문이다.
못믿겠는가?
만일, 그렇다면, 문자열상수 A를 %c로 출력해보라.
출력되지 않는다는 것을 알 수 있다.
'C언어 상수란?' 카테고리의 다른 글
심볼릭(Symbolic)상수란? - const 키워드를 이용하기. (0) | 2015.04.28 |
---|---|
심볼릭(Symbolic) 상수. (0) | 2015.04.28 |
리터럴 상수란? 문자 상수. (0) | 2015.04.27 |
리터럴 상수란? 실수형 상수. (0) | 2015.04.27 |
리터럴 상수란? - 정수형 상수 (0) | 2015.04.26 |