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

uintN_t类型


描述:

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

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

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

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


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

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

int main(void)
{
    printf("sizeof(uint8_t) = %zu\n", sizeof(uint8_t));
    printf("sizeof(uint16_t) = %zu\n", sizeof(uint16_t));
    printf("sizeof(uint32_t) = %zu\n", sizeof(uint32_t));
    printf("sizeof(uint64_t) = %zu\n", sizeof(uint64_t));

    return 0;
}


输出:

sizeof(uint8_t) = 1

sizeof(uint16_t) = 2

sizeof(uint32_t) = 4

sizeof(uint64_t) = 8


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