C語言之基礎知識 防備忘

2021-10-02 07:34:54 字數 2332 閱讀 3487

序號

知識點----整型

1c語言的識別符號,只能由字母、數字和下劃線組成,且第乙個字元必須為字母或者下劃線

2大寫字母和小寫字母認為是兩個不同的字元

3計算機記憶體中,整數是以補碼的形式存在的

4正整數:原碼、反碼、補碼相同; 原碼即為十進位制轉為二進位制

5負整數:原碼,符號位為1。反碼,符號位為1,其餘位取反。補碼,反碼+1

6預設的int(4位元組)是有符號的整數,故在計算取值範圍時,應去掉符號位,即為-215~(215-1) ,不應為216

7unsigned int 為無符號整數,則範圍為0~(216-1)

8整型資料溢位問題:溢位之後,從該型別的取值範圍最小的數值開始迴圈

9乙個整型常量後邊加子乙個字母u或u,認為是unsigned int型;乙個整型常量後邊加乙個字母l或l,認為是long int型; 序號

知識點----浮點型

1浮點型資料,在計算機記憶體中,是按照指數形式儲存的1

2浮點型資料即所說的實數,實數變數包括單精度(float)、雙精度(double)和長雙精度(long double)

3十進位制小數形式:由數字與小數點組成,必須有小數點。123. 、123.0 、0.0都是該形式

4指數形式:123e3代表123×103,e前必須有數字,e後必須為整數。.e3也不合法,前面沒數字,雖然有點

5規範化指數形式:即e之前的小數部分中,小數點左邊應有一位(且只有一位)非零的數字。1.345e3正確

6避免乙個很大的數和乙個很小的數直接相加或相減,否則會丟失小的數

7c語言編譯系統將浮點型常量作為雙精度來處理

8在浮點型後面加字母f或f,編譯器將它們按照單精度處理 序號

知識點----字元常量【即為控制字元】

1\t2

**解釋3

2\n 換行,將當前位置移到下一行的開頭

3\b 退格

4\r 回車,將當前位置移動到本行開頭

5\f 換頁

6\ 』 代表乙個單引號

7\ " 代表乙個雙引號

8\ \ 代表乙個反斜槓字元

9\ddd 1到3位八進位製所代表的字元:ddd轉為十進位制,該十進位製所對應的ascll中的字元

10\xhh 1到2位十六進製制數所代表的字元:十六進製制hh所對應的ascll中的字元

11\0 為null,「空操作」;printf(「abc\0efg\n」);則遇到\0結束,"efg\n"不在輸出

對於\t的**理解:

序號知識點----字元變數

1在計算機記憶體中,字元資料以ascll碼儲存:該字元對應的ascll中的十進位制的二進位制

2因為上一條,故字元型資料可與整形資料通用,可與整形資料進行算數運算

3記住關鍵的字元:『a』=65 『a』=97 『a』=『a』-32 序號

知識點----字串常量

1使用字元陣列為其定義:char obj[ ]=「aswd」;

2char obj[5]=「aswd」; sizeof(obj)=5 陣列分配的大小 strlen(obj)=4 實際字串長度,且不包括「\0」 序號

知識點----各類數值型資料的混合運算

1運算轉換表,見注釋[^4]

2float型的資料在運算時,先轉為double,以提高精度,即使是兩個float型運算,也是先轉為double,再運算

3float a=3.8; int b; b=(int)a; 輸出b=3;

4這個東西就是做題的時候,特別需要注意,自己寫**時,不要弄的很複雜 序號

知識點----算數運算備忘問題

1%取模運算子,要求兩側均為整型量,若不為,必須強轉

2強制轉換:(強轉型別)變數

3++、-- 只能用於變數,不能用於表示式

\t 水平製表(跳到下乙個tab的位置)。這是啥意思?

資料型別轉換

C語言之結構體基礎 防備忘

注 結構體位元組對其問題 1.結構體定義 typedef struct 結構體名 結構體替換名 結構體替換名 變數1,變數2 eg typedef struct student stu stu obj1,obj2 2.結構體巢狀 typedef struct 結構體名1 結構體替換名1 typede...

C語言之共用體基礎 防備忘

注 共用體變數所佔的記憶體長度等於最長的成員的長度 幾個成員變數共同占用同一段記憶體 共用體用來做什麼?微控制器中資料傳送的時候,占用同一片位址,進行資料傳送,十分方便 1.共用體定義 eg typedef union student stu 2.共用體巢狀結構體 eg typedef struct...

C語言之列舉型別基礎 防備忘

注 如果乙個變數,只能有幾種可能的值,則可以定義為列舉型別 1.列舉型別定義 enum weekday 型別定義 enum weekday total 定義列舉變數 如不指定 n內列舉元素的大小,則第乙個元素為0,之後元素自增1 即sun 0,tue 2.sat 6 total mon 即total...