문자상수란?
- 작은따옴표(' ')로 묶은 문자 하나를 의미한다.
예를들면,
A, B, a, b, &, *, + 처럼
Keaboard로 표현할 수 있는 영문자와 숫자, 특수기호들이다.
다음 예제를 통해 간단히 알아보자.
01: #include<stdio.h>
02: int main(void)
03: {
04: printf("문자상수 %c %c %c입니다. \n", 'a', 'b', 'c');
05: printf("문자상수 %c %c %c입니다. \n", '!', '@', '#');
06:
07: return 0;
08: }
<결과값>
04행에서 알파벳 a, b, c를 서식문자 %c로 출력하고 있다.
05행에서 특수기호 ! @ # 을 서식문자 %c로 출력하고 있다.
우리는 바로 이 부분에서 의문을 가질수 밖에 없다.
"어? 왜, 알파벳이 상수지?"
"어? 왜, 특수기호가 상수로 정의되는거지?"
만일, 여러분께서 이러한 점들에 의문을 가진다면 ASCII 코드를 알아봐야 합니다.
이 ASCII 코드를 살펴보면,
10진수, 16진수, 문자에 관련된 코드들이다.
만일, 그 표를 한번 참조해본다면,
알파벳 a, b, c 그리고 특수기호 ! @ #가 각각 10진수로 얼마로 표현되어 있는가?
또 16진수로 얼마로 표현되어 있는가?
다음의 예제는 문자상수 ASCII 코드 표에 나타난 10진수 값과 16진수 값으로 출력하는 코딩이다.
01: #include <stdio.h>
02: int main(void)
03: {
04: printf("문자상수 %c %c %c는 \n", 'a', 'b', 'c');
05: printf("ASCII 코드 10진수로 표현한다면 %d %d %d \n", 'a', 'b', 'c');
06: printf("ASCII 코드 16진수로 표현한다면 %x %x %x \n", 'a', 'b', 'c');
07:
08: printf("\n-------------------------------------------------------------\n");
09:
10: printf("문자상수 %c %c %c는 \n", '!', '@', '#');
11: printf("ASCII 코드 10진수로 %d %d %d \n", '!', '@', '#');
12: printf("ASCII 코드 16진수로 %x %x %x \n", '!', '@', '#');
13:
14: return 0;
15: }
결과값.