定宽整数类型 (C99 起)_C语言中文网
格式宏常量
fprintf 系列函数的格式常量
| int 或 unsigned int 的等价者 |
描述 | 数据类型的宏 | ||||
|---|---|---|---|---|---|---|
|
|
|
|
|
| ||
| 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 或 unsigned int 的等价者 |
描述 | 数据类型的宏 | ||||
|---|---|---|---|---|---|---|
|
|
|
|
|
| ||
| x = 8 、 16 、 32 或 64 | ||||||
d
|
有符号十进制整数值的输入 | SCNdx | SCNdLEASTx | SCNdFASTx | SCNdMAX | SCNdPTR |
i
|
有符号整数值的输入(以首个剖析的字符确定基底) | 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); }
可能的输出:
8 lld -9223372036854775808 +9223372036854775807 +7