inttypes.h
宏
下述定義的宏用於stdint.h
中定義的各種位寬的整形在格式化輸入/輸出時的格式標誌。
- 前3個字符:
- PRI 用於printf format
- SCN 用於scanf format
- 第4個字符
- x 用於hexadecimal formatting
- u 用於unsigned formatting
- o 用於octal formatting
- i 用於integer formatting
- d 用於decimal formatting
- 其他字符
- 8 用於eight bit
- 16 用於sixteen bit
- 32 用於thirty-two bit
- 64 用於sixty-four bit
- FAST8 用於"fast" eight bit
- FAST16 用於"fast" sixteen bit
- FAST32 用於"fast" thirty-two bit
- FAST64 用於"fast" sixty-four bit
- LEAST8 用於"least" eight bit
- LEAST16 用於"least" sixteen bit
- LEAST32 用於"least" thirty-two bit
- LEAST64 用於"least" sixty-four bit
- PTR 用於指針
- MAX 用於maximum supported bit size
下列符號末尾的斜體N表示整型的位寬8、16、32、64等。
例如PRIdFAST32可用於作為列印輸出int_fast32_t整型的格式標誌。
有符號整型的格式化輸出標誌
PRIdN PRIdLEASTN PRIdFASTN PRIdMAX PRIdPTR PRIiN PRIiLEASTN PRIiFASTN PRIiMAX PRIiPTR
無符號整型的格式化輸出
PRIoN PRIoLEASTN PRIoFASTN PRIoMAX PRIoPTR PRIuN PRIuLEASTN PRIuFASTN PRIuMAX PRIuPTR PRIxN PRIxLEASTN PRIxFASTN PRIxMAX PRIxPTR PRIXN PRIXLEASTN PRIXFASTN PRIXMAX PRIXPTR
有符號整型的格式化輸入
SCNdN SCNdLEASTN SCNdFASTN SCNdMAX SCNdPTR SCNiN SCNiLEASTN SCNiFASTN SCNiMAX SCNiPTR
無符號整型的格式化輸入
SCNoN SCNoLEASTN SCNoFASTN SCNoMAX SCNoPTR SCNuN SCNuLEASTN SCNuFASTN SCNuMAX SCNuPTR SCNxN SCNxLEASTN SCNxFASTN SCNxMAX SCNxPTR
例子
#include <inttypes.h>
#include <wchar.h>
int main(void)
{
uintmax_t i = UINTMAX_MAX; // this type always exists
wprintf(L"The largest integer value is %020" PRIxMAX "\n", i);
return 0;
}
類型
- imaxdiv_t 結構化類型,用於保存函數imaxdiv返回的除商與餘數
函數
- imaxabs 計算絕對值
- imaxdiv 計算商與餘數
- strtoimax 字符串轉換為整數
- strtoumax 字符串轉換為無符號整數
- wstrtoimax 寬字符串轉換為整數
- wstrtoumax 寬字符串轉換為無符號整數