C語言筆記

2021-10-10 04:20:54 字數 1768 閱讀 8980

知識點記錄

*:1.乘號

2.指標: int * p

3.間接訪問符(解引用): int *p=&a; *p=99//解引用

&&: 並且; 邏輯與; (表示式1&&表示式2)

短路與: 只要表示式1為假,則不執行表示式2

||: 或; 邏輯或; (表示式1||表示式2)

短路或:若表示式1為真,則不執行表示式2.

只要有乙個表示式為真,則整個表示式為真.

三目運算子:

表示式1 ? 表示式2 : 表示式3

如果表示式1為真,執行表示式2,否則執行表示式3

逗號表示式:

整個表示式最後乙個表示式的結果

關鍵字不能作為識別符號(變數名)

static:

1.修飾變數

①修飾區域性變數

生命週期: 普通區域性變數:進入函式建立,函式結束銷毀

靜態區域性變數:進入函式建立,程式結束消失

作用域: 函式體內

②修飾全域性變數

作用域: 普通全域性變數:整個工程

靜態全域性變數:當前.c檔案

生命週期:程式執行開始到結束

2.修飾函式

總結:static所修飾的函式和變數都只在當前.c檔案當中有效

extern 關鍵字用於引入外部符號(同乙個工程,不同.c檔案)

指標在32位下,佔4個位元組 64位下,佔8個位元組

printf("%d\n", sizeof(char*));

printf("%d\n", sizeof(short*));

printf("%d\n", sizeof(int*));

printf("%d\n", sizeof(long*));

int a =10;

int*p =

&a;int

**pp ==

&p;printf

("%d\n",*

*pp)

;//結果輸出10

switch語句

switch

(整形表示式)

//float,double不能作為引數型別

結構體

#define _crt_secure_no_warnings 1

#include

struct stu

;int

main()

;struct stu s2 =

;printf

("%s %d %s"

, s1.name, s1.age, s1.***)

;//.也有訪問功能

struct stu *p =

&s2;

printf

("%s %d %s",(

*p).name,

(*p)

.age,

(*p)

.***)

;//.的優先順序高於指標(注意給指標帶括號)

printf

("%s %d %s"

, p->name, p->age, p->***)

;//指向符自帶解引用功能

return0;

}

所謂強者是既有意志,

又能等待時機.

-------巴爾扎克

C語言筆記(C )

結構體,類在定義時沒分配空間,用其定義變數時才會分配空間,所以c語言在的結構體不用有靜態型別,因為靜態型別在資料段,而如果在函式用用結構體定義變數,這變數在棧中,這樣就衝突了,但在c 中有相應的機制處理些問題。c 的cin.get 不讀取緩衝區中的回車字元,而cin.getline 將緩衝區中的回來...

C語言 C語言複習筆記

為什麼要學c語言?1972年,美國貝爾實驗室的 d.m.ritchie 在b語言的基礎上最終設計出了一種新的語言,他取了bcpl的第二個字母作為這種語言的名字,這就是c語言。總所周知,任何東西的盛行都只是乙個階段,語言也是如此。但是,c語言是個例外,乙個矗立了半個世紀的語言,其中好壞,我想應該不難了...

C語言筆記

1.換行問題導致與預期效果會不一樣 2.與 的錯誤,成功用 0來表示 3.編譯器分解符號按照從左到右分解 利用貪心演算法4.這樣也可以輸出。5.ga 與 ga 區別 ga 編譯器的處理會不一樣,vc 是後乙個覆蓋前乙個,從左向右 6.int p,a p的值為int,a的值為int,所以p為int指標...