1.有符號整型 %d 和 %lld
// 4字節整型
int n1 = -10000;
int n2 = 10000;
printf("%d / %d",n1,n2);
// 輸出結果爲: -10000 / 10000
// 8字節長整型
long long int n1 = -10000;
long long int n2 = 10000;
printf("%lld / %lld",n1,n2);
// 輸出結果爲: -10000 / 10000
2.無符號整型 %u 和 %llu
// 4字節無符號整型
unsigned int n = 10000;
printf("%u",n);
// 輸出結果爲: 10000
unsigned int n = -1; //實際會被轉換成無符號值 4,294,967,295
printf("%u",n);
// 輸出結果爲: 4294967295
// 8字節無符號長整型
unsigned long long int n = 10000;
printf("%llu",n);
// 輸出結果爲: 10000
unsigned long long int n = -1; //實際會被轉換成無符號值 18446744073709551615
printf("%llu",n);
// 輸出結果爲: 18446744073709551615
3.size_t類型 %zd
size_t tn = 100;
printf("%zd",tn);
4.以十六進制形式輸出 %x
int n = 10000;// 實際轉換成十六進制爲 0x2710
printf("%x",n);
//輸出結果爲:2710
printf("%x", &n);// 也可以輸出內存地址
// 輸出結果可能爲:0x0000abc0
5.以指針形式輸出 %p
int n = 10000;
printf("%p",&n);// 輸出的是n的內存地址
char* p = "aaa";
printf("%p",p);// 輸出的是p指針地址
6.輸出字符串 %s
char* p = "aaaaa";
printf("%s",p);// 輸出:aaaaa
char aData[] = "12345";
printf("%s",aData);// 輸出:12345
7.輸出單字符 %c
char c='a';
printf("%c",c);// 輸出:a