1樓:嵇傲袁珏
唯一的區別就是字串末尾有一個'\0'
面字元陣列是沒有的.
char
ch1="hello";//該串有6個字元,5個可見字元,因為是串,所以末尾自動加上'\0';共六個
char
ch2=;//這樣寫就成了陣列.是確確實實的5個字元
c語言字串陣列和字元陣列有什麼區別?
2樓:孤獨的蠍子
這個是字元陣列。
c語言字元陣列和字串的區別,字元陣列是一個儲存字元的陣列,而字串是一個用雙括號括起來的以'\0'結束的字元序列,雖然字串是儲存在字元陣列中的,但是一定要注意字串的結束標誌是'\0'。
總的來說是沒有區別的,字串就是以字元陣列形式儲存的。可以把一個字串看成是一個字元陣列,可以按陣列那樣操作。兩者沒有本質的區別,只是在不同的情況下有不同的叫法。
3樓:匿名使用者
char a=;這個字元陣列char a=;這個的話可以說是一個字串陣列。一維的字元陣列是就如char a=;二維的字元陣列是就如char a={"sasa","dadad","rerf",可以說二維的字元陣列就是字串陣列
4樓:
int array[10];
char array[10];
第2行是字元陣列,也就是說此時的陣列在記憶體中是一段連續的儲存空間,這一段空間 裡面的單位是1個位元組一個位元組的。好比火車一節一節連線在一起,通俗來說字元陣列裡面裝的都是字元
第1行是整形陣列,也就是說此時的陣列在記憶體中是一段連續的儲存空間,這一段空間 裡面的單位是2(或4位元組)個位元組2個位元組的。好比火車2節2節連線在一起,通俗來說整形陣列裡面裝的都是int型整數
不過你說的這個問題看你看問題的角度了。本質區別?用法區別?等等······
我跟你講的是記憶體中的區別。
共同點:都是連續的空間。
不同的:單元長度不一樣。
5樓:某某知識教授
總的來說是沒有區別的,字串就是以字元陣列形式儲存的。
可以把一個字串看成是一個字元陣列,可以按陣列那樣操作。兩者沒有本質的區別,只是在不同的情況下有不同的叫法。
6樓:匿名使用者
這個是字元陣列,沒有字串陣列這種說法的。。 char a[ ]="abcd";就是可以用字串給字元陣列初始化
7樓:匿名使用者
字串本身就是一陣列(c風格字串),以0字元結尾
這裡的a說成是字元陣列沒問題,說成是字串也對
因為c裡字串的組織形式本質就是陣列
8樓:來賓你好闖天涯
字元陣列可以轉為字串陣列,但是字串陣列不可以轉為字元陣列
字元陣列和字串的區別,請問字串和字元陣列的區別是什麼
字元陣列沒有結束標誌 0 而字串則在末尾有結束標誌 0 在c中,字串就是末尾有字串結束標誌 0 的字元陣列。如果用gets 輸入,則會自動在末尾加上結束標誌 0 c語言中應該是沒有字串這種資料型別的,它只有字元型別,字串也就是字元陣列。不過gets 可以用來接受字串,但它需要提供字串的指標。子函式在...
c語言中關於字元陣列和字串的區別
陣列的長來度是固定的,源我們知道在哪個地方結束。對於c型別的字串,要想知道在那個地方結束的話,我們只需要檢測某個位置的字串是不是 0就行了,也就是說c型別的字串是以 0標記結束的。所以字元陣列和c型別字串的區別就是那個 0。其實從字元陣列和c型別字串的儲存位置上來說也是不同的,這也算是一個區別吧。結...
C 空字元指標和空字串的區別,字串也是地址啊,那麼他們兩個相等嗎
對於char 這樣的指標,在型別上實際上不能區分開。你不知道它表示的是指向一個字元的指標,還是指向一個字串的指標。只能從意義上來區分。但實際上,字串是一個籠統的概念。一字串,可能是一串字元,也可能是一個結構表示的字串。這樣就區分開來了。字串就是字串,指標就是指標,不要把二者混淆。char p,q 1...