2.3 자료형

 

자료형이란 ?

 

자료형 또는 데이터 타입이란 앞에서 나왔던 정수형이나 실수형 같이 공통된 속성을 가진 데이터의 모임을 말합니다.

프로그래밍 언어가 여러 가지 자료형을 가지는 이유는 메모리 공간에는 2진수만이 들어갈 수 있는데 이 2진수들을  상황에 맞게 실수형이나 문자형 등을 사용하여 효율적으로 문제를 해결할 수 있을 것입니다.

 

C언에는 다음과 같이 5개의 기본자료형이 있습니다.

 

키워드 자료형 의미
char character 문자형
int integer 정수형
float floating point number 실수형
double double precision floating point 배정도 실수형
void void 자료형 없음

 

기본자료형 가운데 void 형을 제외한 4자료형은 형수정자를 사용하여 파생자료형을 만들 수 있습니다.

 

형수정자 : signed, unsigned, long, short

 

2.4 정수형 (Integer Type)

 

정수형의 표준은 int 형입니다.

int 형이 DOS 나 Windows 3.1 같은 16비트 운영체제 환경에서는 2바이트에 저장되고, Windows NT 나 UNIX 같은 32비트에서는 4바이트에 저장됩니다.

4바이트에 저장되는 경우 정수의 범위는 -2,147,483,648부터 2,147,483,647까지 입니다.

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

이 경우는 정수의 최대값인 32767 이며

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

이 경우는 최소값 -32768 입니다.

 

다음 예제로 정수의 최대값 및 최소값을 확인해 보자

 

#include <stdio.h>

int main()
{
   char cNum; //문자형으로 변수를 선언했다
   int iNum; //정수형으로 변수 선언
   short isNum; //정수형으로 변수 선언

//char(1byte)≤short(2byte)≤int(4byte)≤long(4,8byte)

   cNum=100;
   iNum=65;
   isNum=0x8000; // 16진수로 8 0 0 0 입력 정수의 최소값이 출력

                 // 2진수로 : 1000 0000 0000 0000
  
   printf("%d\n",cNum);
   cNum='A';
   printf("%d\n",cNum); //A 문자에 해당하는 아스키코드 65 가 출력
   cNum='Z';
   printf("%d\n",cNum);
   printf("%d\n",'Z'+1-'A');
   printf("%d\n",'z'+1-'a');
   printf("%c\n",65);
   cNum='0';
   printf("%d\n",cNum);

   printf("%c\n",iNum);

   printf("%d\n",isNum);

   isNum=0x8000-1; //정수의 최대값이 출력
   printf("%d\n",isNum);

   return 0;
}

101001c.jpg