1樓:
每行元素的空位是一樣的。但是具體元素個數可以不一樣。
比如char a〔2〕〔30〕={「hello」,"it's me"}
這兩個元素個數就不一樣
不一樣的時候,每行的字元都是按行首位址存。存到『\0',然後後面的元素空位
還是按char a〔2〕〔30〕={「hello」,"it's me"}
來考慮首先hello存在a[0][0],也就是第一行的首位址開始。然後連續存字母
其實相當於'h','e','l','l','o','\0',分別代表a[0][0],a[0][1]..a[0][5]
然後第二個字串。存在第二行的首位址,然後連續存
從a[1][0]開始,遇到』\0'結束。
不一樣的時候要按照行首位址來進行儲存。
2樓:匿名使用者
二維陣列的話每行的元素個數都相同,你可以不給它初值,但那個單元已經存在,如果是整型陣列的話用0來填充,如果是字元的話用'\0'來填充;
int a[2][3]=,,};
char c[2][10]=;
其實在記憶體中是按行連續儲存的,為了看清楚我按行列形式輸出:
1 2 3
4 5 0
6 0 0
'c','h','i','n','a','\0','\0','\0','\0','\0' 和 'b','e','i','j','i','n','g','\0','\0''\0'
3樓:匿名使用者
占用單元一樣,都占用列數那麼多個單元,沒有的就用「\0」表示!
4樓:匿名使用者
二維陣列,每行元素個數當然一樣了
int a[10][5];
10 行,5 列
j**a中的二維陣列允許各行的元素個數不一樣嗎?
定義二維陣列4 4,二維陣列中的陣列元素都用鍵盤賦值。求出該二維陣列中主對角線的和C語言
include stdio.h include conio.h include stdlib.h main for i 0 i 4 i printf 此矩陣主對角線的和為 d n num include define m 4 int main int i,j,a m m sum 0 for i 0 ...
定義NXN的二維陣列,輸入陣列元素的值,使陣列左下半三角元素中的值全部置成
假面 include define n 10 int main int a n n int i,j,n scanf d n for i 0 ifor j 0 j i j a i j 0 for i 0 ifor j 0 jprintf d a i j printf n return 0 二維陣列本質...
二維陣列的位址問題,二維陣列位址問題,求詳解
1 a 0 0 為0行0列元素的首位址,a 0 n為0行第n個元素位址,那麼a 0 是表示0行首元素位址嗎?正確,a 0 就是0行首位址。a 0 是零行的首位址,實際上行的位址也只有乙個,也無所謂0行的首位址吧?a 0 值上,是和a 0 相同的,不過型別不一樣。a 0 等效於int 型,實際上是指向...