프로그래밍 언어/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