字元陣列(C type字串)的幾點注意事項

2021-05-11 14:21:06 字數 420 閱讀 5989

c中沒有string型別,程式設計師們必須利用字元陣列來自力更生。

字元陣列很簡單,但是卻有很多微妙的陷阱。c++的string類

給我們省了不少事情,通過了解在沒有string類的年代,人們是如何

處理問題的,也就懂得了string類處理問題的方式。

那個時候:

1.程式設計師必須確保字元陣列以'/0'結尾,即:

char str[max];

str[max-1] = '/0'; //是的,這裡是max - 1而非 max!

2.程式設計師必須確保灌入的字元不會超出字元陣列的邊界;

3.c-type陣列的起始下標為0,帶來了無數意想不到的錯誤。提醒自己注意這點。

4.c語言不檢查陣列的邊界,程式設計師們必須擔負起這一重任。

【參考**:c&point/第一章/不設防的陣列邊界】

字串 字串陣列 字元陣列的區別

string a newstring 字串 string a newstring 5 字串陣列 char a newchar 5 字元陣列 string a newstring abc 字串 string a newstring 字串陣列的賦值 string a 字串陣列的初始化 char a ne...

字串 字元陣列 字串陣列 字元陣列的相互轉換

1 字串 字元陣列的相互轉換 string strstringtype my string 建立乙個字串 charchrchararray 建立乙個字元陣列 chrchararray strstringtype.tochararray 將字串轉換為字元陣列 strstringtype string....

字串,字串陣列,字串指標!!

字串 字元陣列實際上是一系列字元的集合,也就是 字串 string 字串陣列 在c語言中,沒有專門的字串變數,沒有string型別,通常就用乙個字元陣列來存放乙個字串。c語言規定,可以將字串直接賦值給字元陣列 在c語言中,字串總是以 0 作為串的結束符。上面的兩個字串,編譯器已經在末尾自動新增了 0...