二維陣列的每行的元素個數必須一樣嗎

時間 2022-03-31 09:25:06

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 型,實際上是指向...