c語言符指標和字元陣列的區別c語言字元指標和字元陣列的區別

2021-03-07 02:25:36 字數 831 閱讀 5598

1樓:御阪妹妹

首先第一點,非常重要的一點:指標和陣列是不同的兩個型別!

我們從可以從c語言標準文件中得知:

iso/iec 9899:1999 - programing language c

6.2.5 types

20 .

這說明了什麼是陣列型別

同樣在20 .

說明了什麼是指標型別。

在瞭解了兩種型別的基礎上,我們瞭解陣列和指標的區別:

陣列是一組相同型別物件的集合,指標是對一個物件的引用。

它們在使用中表現出了一定的相同點,但不同點也是很多的:

1,陣列直接儲存物件,指標則是指向一個物件。

2,陣列名不能被賦值,指標變數能。

3,sizeof一個陣列,得到陣列的長度(位元組單位),sizeof一個指標,相當於sizeof(void*)。(注意,不同目標平臺指標長度可能不同,所以sizeof(void*)是最準確的回答)

4,(可能是考試內容,對於正確性就呵呵)指標是間接訪問,陣列是直接訪問。

如果你對c語言有深入學習的想法,務必去了解一下c語言的iso標準。

2樓:匿名使用者

字串指標變數本身是一個變數,用於存放字串的首地址。而字串本身是存放在

以該首地址為首的一塊連續的記憶體空間中並以『\0』

作為串的結束。字元陣列是由於若干個數

組元素組成的,它可用來存放整個字串

char *p =「c language」;

char p=;

可以理解為:字元指標是字元陣列的退化

但是實際使用中,字串指標卻比字元陣列更好用

c語言字串陣列和字元陣列有什麼區別

這個是字元陣列。c語言字元陣列和字串的區別,字元陣列是一個儲存字元的陣列,而字串是一個用雙括號括起來的以 0 結束的字元序列,雖然字串是儲存在字元陣列中的,但是一定要注意字串的結束標誌是 0 總的來說是沒有區別的,字串就是以字元陣列形式儲存的。可以把一個字串看成是一個字元陣列,可以按陣列那樣操作。兩...

c語言字元指標問題,一個c語言字元指標問題!

看了目前的回答,覺得還不完整。1 為什麼不能修改 其實不一定,不讓修改是一種保護。linux kernel前一陣子報告的嚴重問題的就是可以修改這個東西了。如果能夠修改,這個ch abcdefg 的語義就不正確了。因為,假設如果有下面的程式 ch abcdefg printf s n ch 如果按照正...

c語言中字串和陣列的區別,C語言中字串和陣列的區別

這個是字元陣列。c語言字元陣列和字串的區別,字元陣列是一個儲存字元的陣列,而字串是一個用雙括號括起來的以 0 結束的字元序列,雖然字串是儲存在字元陣列中的,但是一定要注意字串的結束標誌是 0 總的來說是沒有區別的,字串就是以字元陣列形式儲存的。可以把一個字串看成是一個字元陣列,可以按陣列那樣操作。兩...