当前位置: C语言 -- 标准库 -- <stdint.h> -- intN_t

intN_t类型


描述:

typedefintN_t表示宽度为N,没有填充位(padding bits),二进制补码形式表示(two's complement representation)的有符号整数类型,例如:int8_t表示宽度为8位的有符号整数类型。

intN_t中,N表示一个无前导0的无符号十进制整数(例如:8,而不是08。)。

intN_t类型是可选的;但如果实现支持宽度为8位、16位、32位或者64位,并且没有填充位,二进制补码形式表示的有符号整数类型,实现就必须定义对应的typedef名。

如果两个typedef名仅在不存在或者存在初始字母u上有差异,它们应表示对应的有符号和无符号类型;如果实现提供了其中的一种类型,实现也应该提供另一种类型。


范例:
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
/*类型intN_t范例*/

#include <stdint.h>
#include <stdio.h>

int main(void)
{
    printf("sizeof(int8_t) = %zu\n", sizeof(int8_t));
    printf("sizeof(int16_t) = %zu\n", sizeof(int16_t));
    printf("sizeof(int32_t) = %zu\n", sizeof(int32_t));
    printf("sizeof(int64_t) = %zu\n", sizeof(int64_t));

    return 0;
}


输出:

sizeof(int8_t) = 1

sizeof(int16_t) = 2

sizeof(int32_t) = 4

sizeof(int64_t) = 8


相关内容:
uintN_t 宽度为N的无符号整数类型。