강좌 & 팁
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;
}