Language/C
[따배씨] 3.9 이식성이 높은 고정 너비 정수
migrationArc
2021. 5. 11. 18:00
따배씨 - 따라하며 배우는 C언어
3강 데이터와 C 언어
3.9 이식성이 높은 고정 너비 정수
- C 언어는 각 자료형의 최소 메모리 크기만을 규정
- 여러 시스템에서 자료형의 사이즈가 모두 다를 수 있다
- 이식성이 낮음: 다른 시스템에서 작동하지 않을 가능성이 있음
- 고정 너비 정수형: 변수, 자료형의 사이즈를 명확하게 고정하여 사용
#include <stdio.h>
#include <limits.h>
#include <inttypes.h>
int main()
{
int i;
int32_t i32; // 32 bit interger
int_least8_t i8; // smallest 8 bit
int_fast8_t f8; // fastest minimum
intmax_t imax; // biggest signed intergers
uintmax_t uimax; // biggest unsigned integers
i32 = 1004;
printf("me32 = %d\n", i32);
// me32 = 1004
printf("me32 = %" "d" "\n", i32);
// me32 = 1004
printf("me32 = %" PRId32 "\n", i32);
// me32 = 1004
return 0;
}
- 고정 너비 정수형들은 새로운 자료형을 만드는것이 아니라 명확히 정의하는 것
- printf() 함수를 사용 할때 형식 지정자에 문제 발생
- printf("me32 = %d\n", i32);-> "me32 = %" "d" "\n"
- -> "me32 = %" PRId32 "\n"
- -> "me32 = %d\n"
- PRId32 - 32bit 정수형을 printf로 출력 할때, 메크로를 사용하여 고정 넓이 정수를 편하게 출력 가능
- PRI - print
- d - decimal
- 32 - 32bit
이 글의 모든 사진과 내용의 출처는 홍정모 교수님께 있음을 알려드립니다.
http://blog.naver.com/atelierjpro
실리콘 밸리의 프로그래머 : 네이버 블로그
안녕하세요! 홍정모 블로그에 오신 것을 환영합니다. 주로 프로그래밍 관련 메모 용도로 사용합니다. 강의 수강하시는 분들은 홍정모 연구소 카페로 오세요.
blog.naver.com
http://www.inflearn.com/course/following-c
홍정모의 따라하며 배우는 C언어 - 인프런 | 강의
'따배씨++'의 성원에 힘입어 새롭게 개발된 C 언어로 시작하는 프로그래밍 입문 강의입니다. '따배씨'와 함께 프로그래밍 인생을 업그레이드 해보세요., 따라하며 배우는 C언어 '따배씨++'의 성원
www.inflearn.com