首先來看一段源**:
#include int main()
;//剩餘部分為'\0'
char brr = ;//不是字串,因為沒有'\0'
char crr[10] = ;//字元陣列特有
char drr[10] = "abc";//字元陣列特有 **
char err = "abc";//字元陣列特有 **
char frr[10] = "";
printf("%s\n",arr);
printf("%s\n",brr);
printf("%s\n",crr);
printf("%s\n",drr);
printf("%s\n",err);
printf("%s\n",frr);
return 0;
}
輸出結果:
可以看出,字元陣列與字串很像,在c語言中沒有專門的字串變數,如果想將乙個字串存放在變數中以便儲存,必須使用字元組數,即用乙個字元型陣列來存放乙個字串,即字串就是末尾有'\0'的字元陣列
我們繼續看下面**:
#include int main()
結果為:
既然沒有字串變數,那字串常量怎樣存在?
常量是不可變的量,所以字串常量就是我們用雙引號""定義的,
那怎麼使用字串常量?
使用正如源**中,使指標指向字串常量所在的首位址,使用指標就ok了!
字串崩潰主要有兩個原因:
1.字串變數(字元陣列):越界
2.字串常量(不允許修改):試圖修改字串常量
C語言,字串的處理,陣列字串,指標字串。
c語言菜鳥教程 void memset void str,int c,size t n 複製字元 c 乙個無符號字元 到引數 str 所指向的字串的前 n 個字元。size t strlen const char str 計算字串 str 的長度,直到空結束字元,但不包括空結束字元。char str...
字串,字串陣列,字串指標!!
字串 字元陣列實際上是一系列字元的集合,也就是 字串 string 字串陣列 在c語言中,沒有專門的字串變數,沒有string型別,通常就用乙個字元陣列來存放乙個字串。c語言規定,可以將字串直接賦值給字元陣列 在c語言中,字串總是以 0 作為串的結束符。上面的兩個字串,編譯器已經在末尾自動新增了 0...
C 字元 字串 字元陣列 字串指標 指標陣列
一 c 字元 字串 字元陣列 字串指標 指標陣列 前言 一 字元指標 字元陣列 二 字串指標 三 字串 指標陣列 四 常用方法 參考為了深入理解c 並時常回顧學過的知識點,對c 知識點進行記錄總結。參考1字元指標的儲存方式 字元指標變數本身是乙個變數,用於存放字元 字串的首位址。字串本身是存放在以該...