인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

jdna1009님의 프로필 이미지
jdna1009

작성한 질문수

홍정모의 따라하며 배우는 C언어

3.9 고정 너비 정수

int_least8_t

작성

·

395

0

int_least8_t = i8은 적어도 8비트를 가지고 있는 가장 작은 타입으로 i8이라는 변수를 선언을 해주신다고 하셨는데

그러면 최소한 8비트를 선언해준다는 소리가 맞나요??

만약에 맞다면

큰 메모리 공간을 사용해야하는 데이터가 있으면 16비트도 선언이 가능하고 32 비트 등등 이 사용가능하다는 건가요??

답변 1

0

int_least8_t는 그냥 signed char와 같다고 보면 됩니다

시스템에서 최소한의 8비트가 필요할 때 사용하는 자료형이라고 생각하시면 돼요

당연하게도 signed char 이상의 값을 할당하면 아래와 같이 오류가 발생합니다

아래는 1000을 할당한 예시입니다

 

minchul$ gcc test.c
test.c:6:22: warning: implicit conversion from 'int' to 'int_least8_t' (aka 'signed char') changes value from 1000 to -24 [-Wconstant-conversion]
    int_least8_t i = 1000;
                 ~   ^~~~
1 warning generated.
minchul$ ./a.out
-24%
jdna1009님의 프로필 이미지
jdna1009

작성한 질문수

질문하기