Programming/C Lang Lecture

[C언어 강좌]6강 : 변수에 대한 이해(문자형)

yutaejeong 2014. 7. 21. 13:47


Written By StableVer.

[C언어 강좌]6강 : 변수에 대한 이해(문자형)



목차

1. 문자형 변수 char

2. 문자형 변수 사용해보기

3. 아스키코드



1. 문자형 변수 char

우리는 이전 강좌에서 실수형 변수를 알아보았습니다.

이번 강의에서는 문자형 변수에 대하여 알아보겠습니다.

정수형, 실수형 변수는 여러종류가 있지만 문자형 변수는 char 하나밖에 없습니다.


문자형 변수 하나엔 문자 하나만 들어갈 수 있습니다.

하지만 한글은 변수에 들어갈 수 없습니다. 그 이유는 한글은 조합 가능한 글자가 10,000개가 넘어가지면 char형 변수에는 256가지의 데이터만 들어갈 수 있기 때문입니다.

char형 변수에 들어가는 문자는

1. 영어대/소문자

2. 0~9의 숫자

3. !,?,$,#,%,&등의 특수문자

4.기타출력 요소

가 있습니다.


2. 문자형 변수 사용해보기

자, 이제 문자형 면수를 직접 사용해 보도록 합시다.

소스를 드릴테니 그대로 쳐서 컴파일해 봅시다.

1
2
3
4
5
6
7
#include<stdio.h>
 
int main(){
    char munja='L';
    printf("%c O L Z",munja);
    return 0;
}

*문자형은 'a'처럼 작은 따옴표로 싸서 대입해야 합니다.



결과 열기/닫기





이제 아스키 코드라는 녀석을 알아보도록 합시다.


3. 아스키코드

아스키는 미국 정보 교환 표준 부호(American Standard Code for Information Interchange)라는 뜻으로, 영문 알파벳을 사용하는 대표적인 문자 인코딩이다. 아스키는 컴퓨터와 통신 장비를 비롯한 문자를 사용하는 많은 장치에서 사용되며, 대부분의 문자 인코딩이 아스키에 기초를 두고 있다...고 합니다(출처:위키백과)

아스키 코드는 아스키란 단어에 이미 코드가 포함되어 있으므로 같은 뜻 입니다.

아스키 코드표는 위키백과의 해당 문서를 참고해 주시기 바랍니다.

이제 아스키 코드를 이용한 예제를 보도록 합시다.


1
2
3
4
5
6
7
#include<stdio,h>
    
int main(){
char munja='L';
printf("%d은 %c의 아스키 값이다.", munja, munja);
return 0;
}


결과 열기/닫기




예상하신 결과인가요? 다른 예제를 봅시다.


1
2
3
4
5
6
7
#include<stdio,h>
 
int main(){
int sutja=102;
printf("%c의 아스키 값은 %d이다.", sutja, sutja);
return 0;
}


결과 열기/닫기






이 두 예제를 보면서 의문이 생기실 수 도 있습니다.

"분명 char형은 %c로, int 형은 %d로 출력한다고 했는데 왜 서로 다른방법으로도 출력을 하는거죠?"

물론 대부분의 상황에서는 char형은 %c로, int 형은 %d로 출력하는게 맞습니다. 하지만, 이렇게 출력한다 해서 문제가 되는것은 아닙니다. %d,%f,%c 같은 것들은 출력을 하는 형식에 대한 차이일뿐, 자료형에 따라 다르게 출력해야 하는건 아니기 때문입니다.

아스키 코드에 대한 이해가 되셧나요? 이번 강좌는 여기서 마치도록 하겠습니다.



다음강좌

7강: 배열의 이해(정수,실수형)


[C언어 강좌]6강 : 변수에 대한 이해(문자형)