在C語言中陣列名是地址,那麼結構體名是不是地址呢

2021-03-04 09:23:22 字數 1028 閱讀 4753

1樓:

使用&(取地址運算子) 才能得到結構體的地址。

和陣列不一樣,單獨的結構體名不是該結構體地址的 同義詞。

單獨的機構體名不是該機構體的地址。

2樓:匿名使用者

當然不是,結構體名你可以理解成一個資料型別

3樓:匿名使用者

不是, 結構體名是一個型別名

4樓:匿名使用者

不是,必須使用&,才能得到地址。

c語言中陣列名是一個地址變數嗎

5樓:匿名使用者

結構體名相當於類名,作用也與類名相近似。也可以將結構體名類比為自定義型別名,等同於int,double,float等,通過結構體名定義變數。

c語言陣列名作用 5

6樓:匿名使用者

陣列名首先是一個識別符號,是這個陣列的名字,同時又是一個指標,指向的是這個陣列首地址。不過這個指標和平常見到的指標又有點區別,陣列名是指標常量,就想#define pi 3.14 中的pi的性質一樣,pi的值不能被修改,同樣你也不能修改陣列名的值,即不能把一個地址複製給陣列名,因為陣列名是常量。

不僅是陣列的名字是指標常量,想函式名,結構體等都是指標常量,這是在c設計的時候,有意為之的。

7樓:匿名使用者

如果把陣列看成是教室裡(記憶體中)坐著的一排人,那麼陣列名就是這個排頭坐的凳子。int a[3]; 也就是說 a=&a[0]

8樓:asp點

陣列名一方面是陣列的標識,另一方面是陣列首個元素的地址。

9樓:匿名使用者

陣列是一個變數,陣列名只是一個變數的名稱

10樓:冠童介秀豔

a是陣列名,也就是陣列的首地址,a+1就是a[1]的地址,等價於&a[1].前面加一個星號就是取該地址的值啦,也就是元素a[1]的值。

C語言裡陣列名是地址嗎,C語言中陣列名和指標的區別

是地址,可以稱作陣列地址,也可以看成第一個元素的地址。舉個例子 include int main int argc,char argv p array printf p 2 d n p 2 return 0 這個程式輸出結果如下 p 2 3 程式的第六行 p array 就是把陣列地址賦值給地址變數...

關於c語言中陣列名作為引數傳遞的問題

陣列名作為引數就退化 為指標.所以在你的sizeofmat中,sizeof x 就值就是sizeof一個指標的值.因為指標就是地址,陣列名也是地址.所以你陣列名作為引數的時候,是不會傳遞整個陣列的,而是傳遞了一個地址,就是指標.sizeofmat的引數錯誤 必須是陣列型別 sizof x 才能將其視...

關於c語言把陣列名賦予指標的問題

就是指向一個地址。陣列第一個元素的地址就是陣列地址。你的理解從本質來 上就有問題自 int p1 a不能通過編譯,因為a是二維陣列指標,型別是int 3 無法轉換到int 型。必須用int p1 3 a或者int p1 a 0 才可以。同理int p2 a 0 無法通過編譯,因為a 0 是一個int...