C陷阱與缺陷三 1

2021-06-20 03:51:48 字數 513 閱讀 1534

理解陣列與指標的概念

#includeint main()

指標在32位機器上佔4位元組。

雖然我們可以用   *a 給陣列元素賦值,但是a不是指向首位址的指標,其實只是乙個引用。

int cal[12][13];
該陣列擁有12個陣列型別的元素,每個元素都是擁有13個整型數。

#includeint main()

sizeof()計算的是cal所分配的位元組長。12*13*4 每個int佔4位元組。

cal是指向陣列的指標。 int( *cal)[ 31 ], *cal 是乙個擁有13個整型元素的陣列,cal則是指向這樣陣列的指標。

#includeint main()

從上面結果可以看出二維陣列乙個一位陣列的一位陣列。其實整個記憶體都是一維的。

C陷阱與缺陷1

一 詞法分析 將程式分解成符號的過程 p.s 程式中的單個字元孤立起來沒有任何意義,只要結合上下文才有意義。1.不同於 賦值運算子 關係運算子 注意 不要把賦值運算子用成了關係運算子 也不要把關係運算子用成了賦值運算子 當確實需要對變數賦值並檢查該變數的新值是否為0時,最好的處理方法是 顯式地進行比...

C陷阱與缺陷 筆記 1

第一章 詞法分析 1.1關於 和 的區別 主要問題在於這兩個運算子在if的條件語句中出現時的問題。解決 如果if的條件中需要 賦值語句,則顯式表達該語句的意思。比如判斷賦值後的值是否為0,可以if variable function 0 1.2 和 和 基本就是錯寫的問題。含義不同。1.3 詞法分析...

c陷阱與缺陷 陷阱

例1 if x y break 這就話的意思就是把y賦值x,判斷x是否為0,實則是在判斷y是否為0 例2 while c c t c n 這句話的意思就是 c t c n 賦值給c,而有 符本身就是不為0的數,所以這就是while 1 的意思。例3 int x 4,p new int p 2 cou...