c中字元陣列和字串類的區別

2021-03-03 21:38:29 字數 1403 閱讀 7341

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...