1、複習題
1.打印處下列各項內容須要什麼樣的轉換說明
- 一個字段寬度與位數相同的十進制整數 %d
- 字段寬度爲15的unsigned long類型的整數 %15lu
- 一個形如0x8a、字段寬度爲4的六進制數 %#4x
:對c,s,d,u類無影響;對o類,在輸出時加前綴o;對x類,在輸出時加前綴0x;對e,g,f 類當結果有小數時纔給出小數點。
- 一個字段寬爲8的字符串前8個字符 %8.8s
- 一個參數列表中給定字段寬度的八進制整數 %*o
- 讀取下面各輸入行的scanf()語句 catch 22 (咱們須要跳過catch) %*s %d
2、基本運算符
- C語言中沒有指數運算符,不過C的標準庫中提供了一個pow函數來進行執行指數運算。
- C語言支持多重賦值,例如:
int jane,tarzan,cheeat;
cheeat = jane = tarzan = 8;
//三個變量都被賦值了8
- 支持+ - * /二目運算符,沒什麼好說的,記錄一些特殊點,「截斷」將會向0靠齊,例如:3.8截斷爲3,-3.5截斷爲-3
3、sizeof運算符和size_t類型
- sizeof運算符會以字節爲單位返回運算對象的大小(char類型就是1字節)
- 注意點:若是運算對象是類型,則須要使用圓括號括起來,例如:sizeof (int);
#include<stdio.h>
int D24_sizeof(void) {
int n = 0;
size_t intsize;
intsize = sizeof(int);
printf("n = %d,n has %zd bytes;all ints have %zd bytes.\n", n, sizeof n, intsize);
return 0;
}
- C頭文件系統中能夠使用typedef把size_t做爲unsigned int 或者unsigned long的別名,這樣,使用size_t的時候,編譯器會根據不一樣的系統替換換成標準類型。
- C99作了進一步調整,**新增了%zd轉換說明用於printf()顯示size_t類型的值,若是系統不支持%zd,能夠使用%u或者%lu來代替%zd.
3、源碼: