知識點記錄
*: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指標...