2.6 문자 상수    [DOC]    [SMTS]

 C/C++언어에서는 정수형 변수에 정수뿐만 아니라 문자를 저장할 수 있으며 특별히 char형과 int형은 문자를 저장하는 목적으로도 자주 사용된다. 문자상수는 작은 따옴표(‘’)를 이용하여 표현되며 예를 들면 ‘a’, ‘+’, ‘0’ 등이 있다. 문자상수는 아스키(ASCII)코드라는 고유의 상수값이 정해져 있는데 다음 표에 몇몇 문자상수와 아스키코드값을 수록하였다.


표 2.3.1 문자와 ASCII 코드

종류

문자와 ASCII 코드

숫자 (문자)

ASCII 코드

‘0’

48

‘1’

49

‘2’

50

‘9’

57

알파벳 대문자

ASCII 코드

‘A’

65

‘B’

66

‘C’

67

...

‘Z’

90

알파벳 소문자

ASCII 코드

‘a’

97

‘b’

98

‘c’

99

...

‘z’

122

특수문자

ASCII 코드

‘&’

38

‘*’

42

‘+’

43




char형은 크기가 1바이트이므로 부호 없는 unsigned char 변수인 경우 0부터 255까지의 작은 정수를 저장할 수 있으며 short형은 2바이트로 부호 없는 숫자의 경우 0부터 65,535까지 저장할 수 있다. 만약 char형 변에 문자상수, 예를 들어서 ‘a’가 저장되면 내부적으로는 97이라는 숫자가 저장된다는 것을 알아야 한다.


[표 2.3.2 ] 한 문자가 저장되는 비트 구조


bit7

bit6

bit5

bit4

bit3

bit2

bit1

bit0

‘a’ (97)

0

1

1

0

0

0

0

1


부호가 있는 정수형 데이터는 음수를 2의 보수로 저장하기 때문에 저장범위가 char형은 –128 ~ +127이 되고 short형은 –32,768 ~ +32,767이 된다.


 다음 예를 컴파일한 후 실행해 보자.


ex02-03.c

#include <stdio.h>

int main() {
char ca = 'a', cb = 'A';
char cc = '0';

printf("'%c'\t'%c'\t'%c'\n", ca, cb, cc);
printf("%d\t%d\t%d\n", ca, cb, cc);
}

실행 결과

'a'     'A'     '0'
97      65      48

이것을 보면 문자 ‘a’는 내부적으로 97, ‘A’는 65, 그리고 문자 ‘0’은 48과 같다는 것을 알 수 있다.


'프로그래밍언어.Lib > C,C++' 카테고리의 다른 글

1장 연습문제  (0) 2016.03.28
2.7 논리형(bool형)  (0) 2016.03.28
2.5 실수 자료형과 실수 상수  (0) 2016.03.28
2.4 정수 자료형과 정수형 숫자 상수  (0) 2016.03.28
1.9 2진수와 16진수  (0) 2016.03.07
Posted by 살레시오

댓글을 달아 주세요