第三章 語義陷阱

2021-06-20 03:28:44 字數 1011 閱讀 5928

3.1指標和陣列:

1:c語言中只有一維陣列,且陣列大小必須在編譯期確定;

2:對於陣列,我們只能確定該陣列的大小,以及獲得指向該陣列下標為0的元素的指標;

3:陣列名a除了作為運算子sizeof的引數這一情形外,在其他情況下都是陣列a中下標為0的元素的指標。

sizeof(a)為整個陣列a的大小

3.5空指標並非空字串——0被轉換成指標使用時,這個指標絕對不能被解引用。

3.6不對稱邊界(推薦使用)——即使用第乙個入界點喝第乙個出界點來表示乙個數值範圍

3.7求值順序:只有&&、||、?!、,這四個運算子存在規定的求值順序

1:&&、||首先對左側求值,只有在需要的時候才對右側求值

譬如 :if(y!=0 && x/y >c)保證了當y為非0時才對x/y求值

兩段**:

1:編寫乙個函式,對乙個已排序好的整數表執行二分查詢。函式輸入包括乙個指向表頭的指正,表中元素個數,以及待查詢的數值。函式輸出是乙個指向滿足查詢要求的元素的指標,當未查到滿足要求的數值時,輸出null

int *bsearch1(int *t,int n,int x)

return null;

}int *bsearch2(int *t,int n,int x)

return null;

}

2:將字串s,t合併成r

#include #include #include int _tmain(int argc, _tchar* argv)

strcpy(r,s);

strcat(r,t);

printf("%s",r);

free(r);//注意釋放記憶體

return 0;

}

注 1:動態分配記憶體時要檢查是否分配成功,其次要顯式釋放記憶體。

2:strlen()返回引數中字串所包括的字元數目,而作為結束標誌的空字元並未計算在內。

C陷阱與缺陷第三章 語義「陷阱」

1.指標陣列 注意 c語言中只有一維陣列,而且陣列的大小必須在編譯期就作為乙個常數確定下來。c語言中陣列的元素可以是任何型別的物件,也可以是另外乙個陣列,這樣,就可以 出乙個多維陣列。對於乙個陣列,只能夠做兩件事 確定陣列的大小,以及獲得指向該陣列下標為0的元素的指標。有關對陣列的操作,實際上都是通...

第三章 堆疊

1.基礎知識 堆疊可以實現很多的應用,遞迴的問題轉化成非遞迴形式,在本質上也是堆疊的問題.它是一種 filo 操作的資料結構,一般也有兩種儲存方式 陣列跟鍊錶實現形式,這裡我給出了鍊錶形式的堆疊模板,裡面包括了基本的堆疊所有的操作,還有兩個比較著名的應用例子,時間倉促,精力比較有限,關於迷宮老鼠還沒...

第三章 曙光

第三章 曙光 第二場校園招聘開始了。其實,洋對這個公司的不是很了解。因為前幾天突然在bbs上面看到了這個公司的招聘資訊,洋覺得這個公司不錯,就上網投了簡歷。接下來的乙個多小時,讓洋很震撼!想不到這個公司這個厲害,而且無論從哪方面來說,絕對不比之前的那個公司差。想不到自己的乙個不經意的決定到了這個大的...