C 언어의 데이터 타입이란?
C 언어에서 모든 변수는 반드시 데이터 타입(data type)과 함께 선언됩니다. 데이터 타입은 해당 변수가 차지하는 메모리의 크기와 수행할 수 있는 연산의 종류를 결정하며, 변수에 어떤 종류의 값(정수, 문자, 실수 등)을 저장할 것인지 컴파일러에게 알려주는 중요한 역할을 합니다.
C 언어의 기본 데이터 타입
C 언어에서 가장 널리 사용되는 대표적인 데이터 타입은 다음과 같습니다.
int − 정수(integer) 값을 저장하는 데 사용됩니다.
char − 단일 문자 하나를 저장하는 데 사용됩니다.
float − 단정밀도(single precision) 실수를 저장하는 데 사용됩니다.
double − 배정밀도(double precision) 실수를 저장하는 데 사용됩니다.
C 데이터 타입별 메모리 크기와 값의 범위
아래 표는 C 언어에서 자주 사용되는 데이터 타입과 각각의 메모리 크기(바이트), 그리고 표현할 수 있는 값의 범위를 정리한 것입니다.
| 데이터 타입 | 크기(바이트) | 값의 범위 |
|---|---|---|
| short int | 2 | -32,768 ~ 32,767 |
| unsigned short int | 2 | 0 ~ 65,535 |
| unsigned int | 4 | 0 ~ 4,294,967,295 |
| int | 4 | -2,147,483,648 ~ 2,147,483,647 |
| long int | 4 | -2,147,483,648 ~ 2,147,483,647 |
| unsigned long int | 4 | 0 ~ 4,294,967,295 |
| signed char | 1 | -128 ~ 127 |
| unsigned char | 1 | 0 ~ 255 |
| float | 4 | 1.2E-38 ~ 3.4E+38 |
| double | 8 | 2.3E-308 ~ 1.7E+308 |
참고: 위의 크기와 범위는 일반적인 32비트/64비트 시스템 기준이며, 컴파일러나 운영체제에 따라 다소 달라질 수 있습니다. sizeof 연산자를 사용하면 실제 크기를 직접 확인할 수 있습니다.
C 데이터 타입 선언 문법
C 언어에서 변수를 선언할 때는 아래와 같이 데이터 타입 뒤에 변수 이름을 작성합니다.
data_type variable_name;
예제 코드
다음 예제는 C 언어의 주요 데이터 타입(int, char, float, double)을 선언하고 printf 함수로 출력하는 방법을 보여줍니다.
#include <stdio.h>
int main() {
// 데이터 타입 선언
int a = 10;
char b = 'S';
float c = 2.88;
double d = 28.888;
printf("Integer datatype : %d\n",a);
printf("Character datatype : %c\n",b);
printf("Float datatype : %f\n",c);
printf("Double Float datatype : %lf\n",d);
return 0;
}
실행 결과
Integer datatype : 10
Character datatype : S
Float datatype : 2.880000
Double Float datatype : 28.888000
출력 형식 지정자(Format Specifier) 정리
예제 코드에서 사용된 printf 함수의 형식 지정자는 각각 다음과 같은 의미를 가집니다.
%d − int 타입의 정수를 10진수로 출력합니다.
%c − char 타입의 단일 문자를 출력합니다.
%f − float 타입의 실수를 출력합니다.
%lf − double 타입의 실수를 출력합니다.
이처럼 데이터 타입에 맞는 올바른 형식 지정자를 사용해야 원하는 결과를 정확하게 출력할 수 있습니다.