자료형
종류 | 자료형 | 메모리 크기 | 값의 범위 |
정수형 변수 | char | 1byte | -128 ~ +128 |
int | 4byte | -2147483648 (=-2^31) ~ + 2147483647 (=2^31 - 1) | |
unsigned int | 4byte | 0 ~ 4294967295 (=2^32 - 1) | |
long long int | 8byte | -9.223,372,036,854,775,808 ~ 9.223,372,036,854,775,807 | |
short | 2byte | -32768 ~ 32767 | |
실수형 변수 | float | 4byte | 3.4 * 10^-37 ~ 3.4 * 10^38 (실수) |
double | 8byte | 1.7 * 10^-307 ~ 3.4 * 10^308 (실수) |
서식 지정자
서식 지정자 | 출력 대상 | 출력 형태 |
%d | char, short, int | 부호 있는 10진 정수 |
%ld | long | 부호 있는 10진 정수 |
%lld | long long | 부호 있는 10진 정수 |
%u | unsigned int | 부호 없는 10진 정수 |
%o | unsigned int | 부호 없는 8진 정수 |
%x, %X | float, double | 부호 없는 16진 정수 |
%f | float | 10진수 방식의 부동소수점 실수 |
%lf | long double, double | 10진수 방식의 부동소수점 실수 |
%c | char, short, int | 값에 대응하는 문자 |
%s | char*(문자열) | 문자열 |
%p | void(주소값) | 포인터 주소 값 |
활용 예시
#include <stdio.h>
main()
{
int a = 30; // 정수
float b = 3.14; // 실수
char c = 'A'; // 문자
char d [6] = { 'K', 'O', 'R', 'E', 'A', '\0'};
printf("%d %f %c %s \n", a, b, c, d);
}
30 3.140000 A KOREA