以下是常用的四種字串初始化方法:
(一)char str[10] = "hello";
結尾會被編譯器自動加上結尾符'/0',編譯的時候可以看到它最後是'',asc碼值是0;
"hello"只有5個字元,加上編譯器自動新增的'/0'
,也就是會初始化陣列的前6個元素,剩下有元素會被全部初始化為'/0',這個要注意哦
(二)char str = "hello";
編譯器自動為後面的字串分配大小並加'/0'
(三)char str = ;
編譯器會根據字串大小分配空間,可是不會自動分配'/0',所以結尾的時候要自己加上'/0'
(四)char *str = "hello";
把指向字串的指標給定義好的字元指標
有些高人可能都不用上以這些,可能還會有效率高又離奇的方法,多多交流啊~~~
還有乙個問題寫下來提醒自己:
(一)char *str;
str = "hello";
(二)char str1 = "hello";
(三)char *str2;
str2 = new char[10];
c語言字串初始化 C 字串
c 提供了以下兩種型別的字串表示形式 c 風格的字串起源於 c 語言,並在 c 中繼續得到支援。字串實際上是使用null字元 0 終止的一維字元陣列。因此,乙個以 null 結尾的字串,包含了組成字串的字元。下面的宣告和初始化建立了乙個 hello 字串。由於在陣列的末尾儲存了空字元,所以字元陣列的...
C 列表初始化,字串初始化
列表初始化 int a 0 int a 全面應用 int a int a 0 預設初始化 定義變數時,沒有指定初值,則變數被預設初始化。定義函式體外的變數被初始化為0,函式體內部的內建型別變數不被初始化。字串初始化 string s1 string s2 s1 string s2 s1 string...
C語言字串初始化錯誤
在寫指標陣列題目時,遇到數字轉換問題。問題如下 將大於0小於1000的阿拉伯數字轉換為羅馬數字。表示個位數 i,ii,iii,iv,v,vi,vii,viii,ix 表示十位數 x,xx,xl,l,lx,lxx,l xc 表示百位數 c,cc,ccc,cd,d,dc,dcc,dccc,cm 我選擇了...