c語言中的字元和字串的關係

2021-06-04 22:10:48 字數 631 閱讀 9330

c語言學得一般,最近對字元和字串有點搞混了,就來複習一下。

1.字元

用關鍵字char來定義,例如 char c1;char c2;並且c1,c2裡只能儲存乙個字元。

字元在所有的編譯系統都只佔乙個位元組,並用ascii碼來儲存。 例如字元a的ascii碼是97,。

char c1='a';

pirintf("%d",c1);//輸出a的asc碼:97

printf("%c",c1);//輸出字母a

2.字串

c語言裡沒有專門用來儲存字串的變數,要想儲存字串,那麼只能儲存在字元陣列裡,例如要儲存「china」,

則可以這麼寫 char a[ 5] = ;要是陣列元素個數是6,即:char[6]=,

則陣列第六個位置被填充了「\0」(即a[5] = '\0',代表空,沒有任何內容,用來佔位的)

但是每次要是這麼賦值的話肯定很麻煩,所以c語言允許用另外一中方法來賦值,例如上例就可以這麼賦值char a[ ] = (花括號可以省略)

c規定字串都是以「\o 」為結尾,表示字串結束,但是其不會顯示出來(其為空)。所這個char a[ ] = 就等價於char a[ 5] = ;

元素個數要是大於5,則填充「\0」,例如:char a[ 7] = ;

C語言中的字串和字元陣列

1 字元陣列的定義與初始化 字元陣列的初始化,最容易理解的方式就是逐個字元賦給陣列中各元素。char str 10 即把10個字元分別賦給str 0 到str 9 10個元素 如果花括號中提供的字元個數大於陣列長度,則按語法錯誤處理 若小於陣列長度,則只將這些字元陣列中前面那些元素,其餘的元素自動定...

C語言中的字串

從概念上講,c語言中沒有字串型別 在c語言中使用字元陣列來模擬字串 c語言中的字串是以 0 結束的字元陣列 c語言中的字串可以分配於棧空間,堆空間或者唯讀儲存區 char s1 沒有 0 所以s1只不過是個單純的字元陣列 char s2 也是乙個字元陣列,但是最後乙個元素是 0 因此s2就成了c語言...

c語言中的字串

一 c語言中的字串 c語言中沒有字串型別 字串實際就是多個字元連在一起,所有可以用字元陣列來存放字串。但是使用字元陣列輸出時需要使用for迴圈 例如 這樣使用十分不方便,有沒有一種簡約的方式,讓我們一下子就能輸出呢?有但是需要改兩個地方!1.長度要 1 2.末尾要加乙個 0 然後用 s 格式化控制符...