C語言偏冷知識點彙總

2021-09-08 20:11:52 字數 872 閱讀 9886

1、c語言函式宣告中引數型別寫在右括號後是什麼意思?如下**所示:

int

add(a, b)

inta;

intb;

像這樣的宣告是什麼意思,我測試過在gcc和vc++裡都能通過,但就是不明白是什麼意思,有什麼用處?**有說明文件?

答:古這是古老的寫法,稱為k&r風格,與下面的形式一樣:

int add(int a, int

b)

ansi c標準之前的形式,已廢棄。這種**還可以在linux 原始碼中找到,老的語法。考慮相容性,保留至今。

2、c語言中typedef的兩種典型用法

typedef有兩種用法:

一、一般形式,定義已有型別的別名

typedef   型別    定義名;

二、建立乙個新的型別

typedef   返回值型別   新型別名(引數列表);

三、舉例

1)typedef int num[10];//

宣告整型陣列型別

num n;

//定義n為整型陣列變數,其中n[0]--n[9]可用

2)typedef char* string;//

宣告string為字元指標型別

string p,s[

10];//

p為字元指標變數,s為指標陣列

3)typedef int (*pointer)();//

宣告pointer為指向函式的指標型別,該函式返回整型值,沒有引數

pointer p1,p2;

//p1,p2為pointer型別的指標變數

C語言基礎冷知識彙總

和 的區別 表示按位取反,1變成0,0變成1。表示邏輯取反,false變ture,true變false,在c語言中,邏輯取反的物件只要不是0就表示為真。示例 5 0 5 二進位制00000101 取反11111010 6 表示按位取反,表示邏輯否定 所有的不是0的數用!操作後都是0 只有當運算元為0...

C語言知識點彙總(學習筆記)

c語言沒有專門用於儲存字串的變數型別,字串都被儲存在char型別的陣列中。陣列由連續的儲存單元組成,字串中的 字元被儲存在相鄰的儲存單元中,每個單元儲存乙個字元,陣列末尾位置以字元 0結束。char name 40 name中有40個儲存單元的字串,只能儲存39個字元,剩下乙個位元組留給空字元。兩條...

C 程式設計知識點彙總

15 多型 16 虛函式 物件導向程式設計是將物件抽象成類,把類的資料與操作封裝在一起而進行的程式設計。優點 易維護 提高 復用率 用於不同引數型別獲引數數目不同時 inline 在被呼叫的每乙個地方都插入它的乙份拷貝,適用於小函式。全域性靜態變數 作用域在本檔案中,程度執行期間一直存在。區域性靜態...