已知定義了二維陣列a3則表示式a1正確嗎為什麼

2021-03-03 21:56:10 字數 2316 閱讀 4369

1樓:蒼老師的戀愛

yes,it is right.

the result of the expression "a[0]+1" is a pointer,

定義了二維陣列a[3][4],那麼a+1,*(a+1),*a[1],*(a[0]+1)各代表什麼意思

2樓:匿名使用者

因為a是t[4]型別,所

以a[1]得到的是int型的值,對其取下標是非法的內。所以a[1][0]是一個非法的表示式。

咳咳以容下都是廢話。。怎麼跑題了。。。既然打出來就懶得刪了至於&a[1][0],編譯器解釋為&((a[1])[0]),同樣非法。

3樓:聽不清啊

定義了二維陣列a[3][4],那麼

a+1=*(a+1)=*a[1],表示a[1]的地址,即&a[[1]。

*(a[0]+1)表示a[0][1]

假定一個二維陣列的定義為「int a[3][4]={{3,4},{2,8,6}}」則a[2][0]的值為多少

4樓:喜歡種蘑菇

a[2][0]的值為0

int a[3][4]表示定義一個

copy3行4列的整bai型陣列a;,}表示初始化du陣列。

最外圍zhi{}中的每一個{}表示依次對每一行賦值,不夠dao的補0},所以,}表示對陣列的前兩行賦值,每行也是依次賦值,不足補0;

int a[3][4]=,}

最終陣列儲存情況:陣列的下標是從0開始的,如下圖所示。

所以a[2][0]的值為0

5樓:匿名使用者

一般編譯器會將沒有初始化的陣列成員賦值為0,所以int a[3][4]=,回}這麼定以後,陣列a裡的成員答如下:

3,4,0,0

2,8,6,0

0,0,0,0

0,0,0,0

所以a[2][0]的值為0

6樓:匿名使用者

c語言裡的下標是從0開始的,所以a[2][0]其實就是上面的智者構造好的陣列中得第三行第一列的元素0.

7樓:匿名使用者

a[2][0]=0

int a[3][4]表示定義一個3行4列的整型陣列a;,}表示初始化陣列。

表示依次對每一行賦內值,不夠的補0},所以容,}表示對陣列的前兩行賦值,每行也是依次賦值,不足補0;

int a[3][4]=,}

最終陣列儲存情況:陣列的下標是從0開始的

所以a[2][0]=0

8樓:匿名使用者

是0,裡面沒有的值都是用0表示

c語言大神進 c語言中,例如一個二維陣列a[3][4],則a與a[0]代表的意思一樣嗎?a

9樓:匿名使用者

char *p是一維的, str是2維的,p=str,二者不匹配。str[0]是一維的,與p同型別。

a與a[0]只是在使用a的首地址這個值時意義才一樣。

a是地址,*a是取a這個地址中儲存的一個byte.[看數值型別,如果是整數,則是取整數]

10樓:匿名使用者

題主還是不理解指標。

char str[10]=,*p;

這個定義裡str相當於一個二維指標,而p是一維指標。

二維陣列在記憶體中按行儲存,所以可以說整個二維陣列包含兩個一維陣列,也就是兩行,第0行是「ok」,第一行是「good」。 "ok"和"good"的首地址分別為(一維指標)str[0]和str[1],str[0]只是指向二維陣列第一行的(一維)指標,而str是指向整個二維陣列的(二維)指標,所以,p和str[0]都是一維字元型指標,賦值是沒問題的,但是p=str;是不對的。

「對二維陣列a[3][4],a+1與a[1]都是陣列第二行的首地址」是錯的,為什麼呢

11樓:匿名使用者

型別的問題。

a+1是個地址沒錯,因為陣列名被自動轉換為地址並參與+運算;

但a[1]是個一維陣列物件,你用sizeof對比一下它們兩個就知道了。

12樓:匿名使用者

a+1是第二行的首地址 它指向第二行,如果是(a+1)+1則指向第2行(從第0行開始數),a[1]指向第一行的第0個元素,指標指向列,a[1]+1則表示第一行的第一列元素(行和列都是從0開始)。

若有定義intm5,n3則表示式m1,n

答案是 2,定義時的初值沒用,後面的表示式重新賦值。m 1 n 2 返回2 m的值為1,m 2返回 1,m的值被賦值為 1,m 1,返回 2 5,4,7 include stdio.h main 你可以自己抄執行試試,希望對你有幫助。5 4 7 求大神解答int m 5,n 3則表示式 m 1,n ...

定義 int x 3,y 4,z 5則表示式 x y z 1 y z

c語言的優先順序 從上到下依次遞減 醋 初等,4個 指向結構體成員 結構體成員 壇 單目,9個 負號 型別 指標 取地址 sizeof長度 酸 算術,5個 減味 位移,2個 灌 關係,6個 等於 不等於 味 位邏,3個 按位與 按位異或 按位或 落 邏輯,2個 邏輯與 邏輯或 跳 條件,1個,三目 ...

定義了二維陣列a,那麼a1a1a1各代表什麼意思

因為a是t 4 型別,所 以a 1 得到的是int型的值,對其取下標是非法的內。所以a 1 0 是一個非法的表示式。咳咳以容下都是廢話。怎麼跑題了。既然打出來就懶得刪了至於 a 1 0 編譯器解釋為 a 1 0 同樣非法。定義了二維陣列a 3 4 那麼 a 1 a 1 a 1 表示a 1 的地址,即...