반응형
sizeof
데이터형이나 어떤 값의 바이트 크기를 구하는 연산자
→ 데이터형의 크기는 플랫폼에 따라 다름
sizeof(데이터형)
sizeof(값)
Ex)
sizeof(short)
sizeof(123)
→ sizeof 연산자는 데이터형뿐만 아니라 변수나 값에도 사용할 수 있음
#include<stdio.h>
int main(void){
int a;
printf("sizeof a : %d\n", sizeof(a));
printf("size of 3.14 : %d\n", sizeof(3.14));
return 0;}
▶ sizeof(a) : 변수 a의 바이트 크기를 구함
▶ sizeof(3.14) : 실수값 3.14의 바이트 크기를 구함
Ex)
#include<stdio.h>
int main(void) {
printf("%d %d %d %d %d \n\n", sizeof(int), sizeof(char), sizeof(short), sizeof(4.5), sizeof('d'));
}
▶ sizeof(int) : int의 메모리 값은 4byte
▶ sizeof(char) : char의 메모리 값은 1byte
▶ sizeof(short) : short의 메모리 값은 2byte
▶ sizeof(4.5) : 숫자 4.5가 차지하는 메모리 값은 8byte
▶ sizeof('d') : 문자 d가 차지하는 메모리 값은 4byte
→ char는 1byte로 출력되는 이우 : 4byte 문자를 1byte로 줄여서 출력
★ 지수승 표현 ★
#include<stdio.h>
int main(void) {
double y = 23.45e-3;
printf("%.3f %d \n", y, sizeof(y));
float k = 3.4;
printf("%f %d\n", k, sizeof(float));
}
▶ e : 지수승 표현
→ double y = 23.45e-3 : 23.45를 10의 -3승으로 표현(소수점 3자리까지 출력)
▶ %.3f : 실수를 소수점 3자리까지만 출력함
→ %e : 지수승 출력 지정 서식 문자
▶ sizeof(y) : 변수 y에 저장된 23.45가 8byte를 차지함
▶ sizeof(float) : float형의 크기는 4byte
반응형
'Language > C' 카테고리의 다른 글
[ C ] [scanf() 라이브러리 ] 표준입력하기 (0) | 2021.09.13 |
---|---|
[ C ] 문자의 2진 표현 (0) | 2021.09.13 |
[ C ] 데이터형 (0) | 2021.09.13 |
[ C ] [ 변수의 초기화 연습 문제 ] 알파벳 출력 프로그램 (0) | 2021.09.10 |
[ C ] [ 변수 연습 문제 ] 변수에 입력된 정수 출력 프로그램 (0) | 2021.09.10 |