©
本文档使用
php.cn手册 发布
| 在头文件<stdint.h>中定义
|:----|
| int8_tint16_tint32_tint64_t | 有符号整数类型,其宽度分别为8,16,32和64位,不带填充位,并使用2的补码作为负值(仅当实现直接支持该类型时才提供)|
| int_fast8_tint_fast16_tint_fast32_tint_fast64_t | 最快的有符号整数类型,其宽度至少分别为8,16,32和64位|
| int_least8_tint_least16_tint_least32_tint_least64_t | 最小有符号整数类型,宽度至少分别为8,16,32和64位|
| intmax_t | 最大宽度整数类型|
| intptr_t | 整数类型可以容纳一个指针|
| uint8_tuint16_tuint32_tuint64_t | 无符号整数类型,宽度分别为8,16,32和64位(仅当实现直接支持类型时才提供)|
| uint_fast8_tuint_fast16_tuint_fast32_tuint_fast64_t | 最快的无符号整数类型,分别具有至少8,16,32和64位的宽度
| uint_least8_tuint_least16_tuint_least32_tuint_least64_t | 最小无符号整数类型,分别具有至少8,16,32和64位的宽度|
| uintmax_t | 最大宽度无符号整数类型|
| uintptr_t | 无符号整数类型,可以存放指针|
| 在头文件<stdint.h>中定义 |
|:----|
| 有符号整数:最小值|
| INT8_MININT16_MININT32_MININT64_MIN | int8_t,int16_t,int32_t,int64_t(macroconstant)类型的对象的最小值|
| INT_FAST8_MININT_FAST16_MININT_FAST32_MININT_FAST64_MIN | int_fast8_t,int_fast16_t,int_fast32_t,int_fast64_t(宏常量)类型的对象的最小值|
| INT_LEAST8_MININT_LEAST16_MININT_LEAST32_MININT_LEAST64_MIN | int_least8_t,int_least16_t,int_least32_t,int_least64_t(宏常量)类型的对象的最小值|
| INTPTR_MIN | intptr_t(宏常量)|类型的对象的最小值
| INTMAX_MIN | intmax_t(宏常量)|类型的对象的最小值
| 有符号整数:最大值|
| INT8_MAXINT16_MAXINT32_MAXINT64_MAX | int8_t,int16_t,int32_t,int64_t(宏常量)类型的对象的最大值|
| INT_FAST8_MAXINT_FAST16_MAXINT_FAST32_MAXINT_FAST64_MAX | int_fast8_t,int_fast16_t,int_fast32_t,int_fast64_t(宏常量)类型的对象的最大值|
| INT_LEAST8_MAXINT_LEAST16_MAXINT_LEAST32_MAXINT_LEAST64_MAX | int_least8_t,int_least16_t,int_least32_t,int_least64_t(宏常量)类型的对象的最大值|
| INTPTR_MAX | intptr_t(宏常量)|类型的对象的最大值
| INTMAX_MAX | intmax_t(宏常量)|类型的对象的最大值
| 无符号整数:最大值|
| UINT8_MAXUINT16_MAXUINT32_MAXUINT64_MAX | 类型为uint8_t,uint16_t,uint32_t,uint64_t(宏常量)的对象的最大值|
| UINT_FAST8_MAXUINT_FAST16_MAXUINT_FAST32_MAXUINT_FAST64_MAX | 类型为uint_fast8_t,uint_fast16_t,uint_fast32_t,uint_fast64_t(宏常量)的对象的最大值|
| UINT_LEAST8_MAXUINT_LEAST16_MAXUINT_LEAST32_MAXUINT_LEAST64_MAX | 类型为uint_least8_t,uint_least16_t,uint_least32_t,uint_least64_t(宏常量)的对象的最大值|
| UINTPTR_MAX | 类型为uintptr_t(宏常量)|的对象的最大值
| UINTMAX_MAX | 类型为uintmax_t(宏常量)|的对象的最大值
INT8_CINT16_CINT32_CINT64_C | 展开为一个整数常量表达式,其中具有由其参数指定的值,并且类型分别为int_least8_t,int_least16_t,int_least32_t,int_least64_t(函数宏) |
---|---|
INTMAX_C | 展开为具有由其参数指定的值的整型常量表达式和类型intmax_t(函数宏) |
UINT8_CUINT16_CUINT32_CUINT64_C | 展开为具有由其参数指定的值的整型常量表达式,以及类型分别为uint_least8_t,uint_least16_t,uint_least32_t,uint_least64_t(函数宏) |
UINTMAX_C | 展开为具有由其参数指定的值的整型常量表达式以及类型uintmax_t(函数宏) |
#include <stdint.h>UINT64_C(0x123) // might expand to 0x123ULL or 0x123UL
| 在头文件<inttypes.h>中定义 |
|:----|
fprintf
为函数族设置常量格式等价于int orunsigned int | 描述 | 数据类型的宏 | ||
---|---|---|---|---|
uintx_t | uint_leastx_t | uint_fastx_t | uintmax_t型 | uintptr_t的 |
| x = 8,16,32或64 |
| d | 输出一个带符号的十进制整数值| PRIdx | PRIdLEASTx | PRIdFASTx | PRIdMAX | PRIdPTR |
| i | PRIix | PRIiLEASTx | PRIiFASTx | PRIiMAX | PRIiPTR |
| u | 输出一个无符号的十进制整数值| PRIux | PRIuLEASTx | PRIuFASTx | PRIuMAX | PRIuPTR |
| o | 输出一个无符号的八进制整数值| PRIox | PRIoLEASTx | PRIoFASTx | PRIoMAX | PRIoPTR |
| x | 输出一个无符号的小写十六进制整数值| PRIxx | PRIxLEASTx | PRIxFASTx | PRIxMAX | PRIxPTR |
| X | 输出一个无符号的大写十六进制整数值| PRIXx | PRIXLEASTx | PRIXFASTx | PRIXMAX | PRIXPTR |
fscanf
为函数族设置常量格式等价于int orunsigned int | 描述 | 数据类型的宏 | ||
---|---|---|---|---|
uintx_t | uint_leastx_t | uint_fastx_t | uintmax_t型 | uintptr_t的 |
| x = 8,16,32或64 |
| d | 输入一个带符号的十进制整数值| SCNdx | SCNdLEASTx | SCNdFASTx | SCNdMAX | SCNdPTR |
| 我| 输入有符号的整数值(基数由解析的第一个字符决定)| SCNix | SCNiLEASTx | SCNiFASTx | SCNiMAX | SCNiPTR |
| u | 输入一个无符号的十进制整数值| SCNux | SCNuLEASTx | SCNuFASTx | SCNuMAX | SCNuPTR |
| o | 输入一个无符号的八进制整数值| SCNox | SCNoLEASTx | SCNoFASTx | SCNoMAX | SCNoPTR |
| x | 输入一个无符号的十六进制整数值| SCNxx | SCNxLEASTx | SCNxFASTx | SCNxMAX | SCNxPTR |
#include <stdio.h>#include <inttypes.h> int main(void){ printf("%zu\n", sizeof(int64_t)); printf("%s\n", PRId64); printf("%+"PRId64"\n", INT64_MIN); printf("%+"PRId64"\n", INT64_MAX); int64_t n = 7; printf("%+"PRId64"\n", n);}
可能的输出:
8lld-9223372036854775808+9223372036854775807+7
算术类型
| 固定宽度整数类型的C ++文档 |