Search

'문자열 상수'에 해당되는 글 2건

  1. 2015.04.28 다음과 같은 결과가 나오도록 코딩하시오.
  2. 2015.04.27 리터럴 상수란? 문자열 상수.

10 + 20 = 30




위와 같은 결과가 나오도록  코딩하시오.

(언제나 그러하듯 정답은 위의 결과물이 나오기만 하면 정답)



리터럴 상수란? 문자열 상수.

C언어 상수란? 2015. 4. 27. 09:00 Posted by 네트동자

문자열 상수란?

 

- 문자열 상수란 큰따옴표( "  " )로 묶은 하나 이상의 문자로 구성된 문자열을 의미한다.

 

 

 

다음의 예제를 통해 간단히 알아보도록 하자.

 

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로 출력해보라.

출력되지 않는다는 것을 알 수 있다.