나는 종종 uint32, uint64와 같은 유형을 사용하는 소스 코드를보고, 프로그래머가 애플리케이션 코드에서 정의해야하는지 아니면 표준 lib 헤더에서 정의해야하는지 궁금합니다.
내 애플리케이션 소스 코드에 이러한 유형을 포함하는 가장 좋은 방법은 무엇입니까?
답변
C99 stdint.h
는 다음을 정의합니다.
int8_t
int16_t
int32_t
uint8_t
uint16_t
uint32_t
그리고 아키텍처가 지원하는 경우 :
int64_t
uint64_t
다른 다양한 정수 typedef stdint.h
도 있습니다.
C99 환경없이 멈춘다면 아마도 고유 한 typedef를 제공하고 어쨌든 C99를 사용해야합니다.
uint32
하고 uint64
(즉,없는 _t
접미사) 아마 응용 프로그램에만 적용됩니다.
답변
이러한 정수 유형은 모두 stdint.h
답변
C99를 사용하는 경우 stdint.h
. BTW, 프로세서가 지원하는 경우 64 비트 유형이 있습니다.
답변
질문자는 실제로 int16_t (등)보다는 int16 (등)에 대해 물었습니다.
표준 헤더는 없으며 “_t”없이 정의하는 Linux의 / usr / include / 폴더도 없습니다.