프로그래밍 언어/C언어
[C언어] 데이터 타입
김곰댕
2021. 12. 14. 19:58
728x90
C 프로그램에서 사용되는 모든 변수나 상수 값은 정해진 데이터형을 가짐
데이터형에 의해서 주어진 값의 이진 표현이 결정됨
기본 데이터형 (Primitive Data Type) |
파생 데이터형 (Derived Data Type) |
사용자 정의형 (User-defined Data Type) |
문자형 : char | 배열 | 구조체 |
정수형 : short, int, long, long long | 포인터 | 공용체 |
실수형 : float, double, long double | 열거체 |
1. 문자형 : char
데이터형 | 의미 | 크기 |
char | signed char | 1byte |
unsigned char | 부호 없는 문자형 | 1byte |
1) 문자형 변수 선언
char 변수명;
char 변수명, 변수명, ... 변수명;
char 변수명 = '초기값';
char a; //문자형 변수 a 선언
char a,b,c; //문자형 변수 a,b,c 선언
char a = 'k'; //문자형 변수 a 선언과 동시에 초기화
b = 't'; //변수 b에 t 저장
2. 정수형 : short, int, long, long long
C언어는 정수형으로 short, int, long을 제공함
short형의 크기 <= int형의 크기 <= long형의 크기
데이터형 | 의미 | 크기 |
short | signed short int | 2 |
unsigned short | unsigned short int | |
int | signed int | 4 |
unsigned int | unsigned int | |
long | signed long int | 4 |
unsigned long | unsigned long int | |
long long | signed long long int | 8 |
unsigned long long | unsigned long long int |
1) 정수의 표현
(1) 부호가 있는 정수형은 최상위 비트(msb)를 부호비트로 사용함
- 0이면 양수 1이면 음수
(2) 부호가 있는 정수형은 음수를 표현하는데 2의 보수를 사용함
(3) 부호가 없는 정수형은 최상위 비트 값을 저장하는 용도로 사용함
어떤 작업을 할때 변수가 양수로만 사용되고 음수로 사용될 일이 없으면 unsigned로 선언하여 사용하는 것이 더욱 효과적임
3. 데이터형의 유효 범위
분류 | 데이터형 | 바이트 크기 | 유효범위 |
문자형 | char | 1 | -128(-2^7) ~ 127(2^7-1) |
unsigned char | 1 | 0~255(2^8-1) | |
정수형 | short | 2 | -32768(-2^15) ~ 32767(2^15-1) |
unsigned short | 2 | 0~65535(2^16-1) | |
int | 4 | -2147483648(-2^31) ~ 2147483647(2^31-1) | |
unsigned int | 4 | 0 ~ 4294967295(2^32-1) | |
long | 4 | -2147483648(-2^31) ~ 2147483647(2^31-1) | |
unsigned long | 4 | 0 ~ 4294967295(2^32-1) |
4. 실수형 : float, double, long double
1) 실수의 표현 방식
5. 형식지정자
1) 형식지정자를 이용한 printf() 출력
printf("%c", 'a'); //문자형 (%c)
printf("%d", 5); //정수형 (%d)
printf("%f", 7.5); //실수형 (%f)
728x90