1. 문자형

1) 문자형이란  하나의 문자를 표현할수 있는 자료형이다. 기본적으로 컴퓨터는 숫자표현만 가능하기 때문에 문자도 숫자로 기억한다. 그래서 보통 문자형 변수는 정수형 변수로 분류하기도 한다.

숫자만 표현가능한 컴퓨터의 특성상 특정숫자와 문자하나를 일정하게 대응시켜야 하는데 이러한 대응시키는 방식을 인코딩이라 하며, 문자 인코딩에는 여러종류가 있지만 C언어의 기본 문자형은 char형이며, char형의 기본 인코딩은 아스키코드를 사용한다. 아스키코드는 0~255사이 (1바이트)의 숫자를 특정 문자에 대응시켜놓은 인코딩 방식을 말한다.

2. 확장 문자

​문자형으로 분류되지만 특별한 용도로 사용되나 문자로 표현하기 곤란한 문자형들이 있다. 예를들어 C언어에서 개행을 나타내는 의미의 엔터를 이용하면 코드에서 엔터가 되기때문에 곤란하다.

개행은 키보드입력이나 직접 문자로 표현하기 곤란하지만 어쨌든 문자이다. 이러한 문자들을 확장문자, 또는 이스케이프 시퀸스라고도 한다. 확장문자는  \로 시작하는 이중문자 이기도 하다.

 

3. 문자열

문자열은 문자가 일렬로 나열되어있는 문자들의 집합을 의미한다. ​C언어에서는 기본적으로 문자열을 처리할수 있는 문자열 데이터 형태가 없다. 그렇기 때문에 문자형의 배열이나 포인터를 이용하여 문자열을 표현한다. 문자열의 끝은 널(NULL)문자로 판단하게 된다.