C語(yǔ)言整數(shù)類(lèi)型
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdint.h>
#include <inttypes.h> //由于基礎(chǔ)數(shù)據(jù)類(lèi)型在各系統(tǒng)中可能占用長(zhǎng)度不相同,C99新增頭文件stdint.h和inttypes.h以確保C語(yǔ)言的類(lèi)型在各系統(tǒng)中的功能相同
int main(void)
{
int32_t a = 1; //int32_t類(lèi)型,表示32位有符號(hào)整型,在使用32位int的系統(tǒng)中,頭文件會(huì)把int32_t作為int的別名,而在int為16位、long為32位的系統(tǒng)中int32_t會(huì)作為long的別名,這種精確寬度整數(shù)類(lèi)型可能存在底層系統(tǒng)不支持的情況
int16_t a16;
int8_t a8;
int_least32_t b = 1; //int_least32_t最小寬度類(lèi)型,作為可容納32位有符號(hào)整數(shù)值的類(lèi)型中寬度最小的類(lèi)型的別名,保證所表示的類(lèi)型一定至少有指定寬度,兼容性高
int_least16_t b16;
int_least8_t b8;
int_fast32_t c = 1; //int_fast32_t最快最小寬度類(lèi)型,作為系統(tǒng)中對(duì)32位有符號(hào)值而言運(yùn)算最快的整數(shù)類(lèi)型的別名
int_fast16_t c16;
intmax_t d = 1; //intmax_t類(lèi)型,表示最大的有符號(hào)整數(shù)類(lèi)型,可儲(chǔ)存任何有效的有符號(hào)整數(shù)值,可能比long long int還大
uintmax_t e = 1; //uintmax_t類(lèi)型,表示最大的無(wú)符號(hào)整數(shù)類(lèi)型
printf("%" PRId32 "\n", a); //inttypes.h頭文件提供的PRId32字符串宏,代表打印32位有符號(hào)值的合適轉(zhuǎn)換說(shuō)明,當(dāng)前編譯器%d可打印32位有符號(hào)值,所以PRId32表示為"d",和前后兩段字符串合起來(lái)變成"%d\n"
printf("a" "b" "c\n"); //三段字符串會(huì)連起來(lái),結(jié)果為abc換行
//PRId16; PRId64; PRIdLEAST16; PRIdFAST16; PRIdMAX;等對(duì)應(yīng)上述各種類(lèi)型
return 0;
}