이번 편의 목표: 정수, 실수, 문자 변수를 만들고 각 자료형이 차지하는 크기를 확인합니다.
변수는 값을 담는 메모리에 붙인 이름입니다. 자료형은 그 메모리의 크기와 해석 방법을 정합니다. 지역 변수는 선언하면서 값을 넣습니다. 값을 넣기 전에 읽으면 프로그램의 의미가 정해지지 않습니다.
#include <stdio.h>
int main(void) {
int late_days = 3;
double daily_fee = 100.0;
char mark = 'A';
printf("%d\n", late_days);
printf("%.1f\n", daily_fee);
printf("%c\n", mark);
printf("%zu %zu %zu\n", sizeof(int), sizeof(double), sizeof(char));
return 0;
}int는 정수, double은 실수, char는 문자 코드 하나입니다. 문자 하나는 작은따옴표입니다. sizeof는 바이트 수를 알려 주는 연산자이고, 그 결과 타입은 size_t라서 서식은 %zu입니다.
리눅스 64비트에서 int는 4, double은 8, char는 1입니다. 다른 환경에서는 int 크기가 달라질 수 있으므로, 글에 적힌 숫자만 외우기보다 이 프로그램의 출력을 기준으로 삼습니다.
문자열은 char 하나에 들어가지 않습니다. 문자 여러 개와 끝 표시는 10편에서 다룹니다.
직접 해 보기
int 변수 price에 12000을 넣고 %d로 출력하세요. 이어서 sizeof(price)도 출력해 sizeof(int)와 같은지 보세요.
해설
price는 int이므로 sizeof(price)와 sizeof(int)는 같습니다. 12000은 %d로 출력됩니다.
COMMENTS
댓글 0
이 글에 대한 의견이나 질문을 남겨 주세요.
댓글은 구글이나 카카오로 시작한 뒤에 남길 수 있습니다.
등록된 댓글이 없습니다.