二維陣列的指標小問題

2022-12-29 14:31:10 字數 507 閱讀 4374

1樓:匿名使用者

首先這是一個二為陣列,就不能簡單的把陣列名理解為元素地址了,這 時候陣列名代表「首行」地址,既第0「行」地址,行地址前再加個*,才指向「元素」地址!

行地址和元素地址(有些書也稱之為列地址,不過我覺的元素地址更好理解)的關係是,在程式中經常要經過行地址來表示元素地址,注意:最後都要變成元素地址才能用; 元素地址=行地址+列數; 比如a[3][4]=*(*a[0+3]+4),括號內的*是指向行地址的,最左邊的是指向元素的;

一般來說,二為陣列要用兩個*(一個指向行,一個指向列)來指向元素地址的。但在這個題中,陣列名a已經代表行地址了,所一就只有一個*來表示元素地址了;

2樓:匿名使用者

p=*a 相當於p=a[0]和 p=*(a+0) p=*a 是列指標 指向二維陣列的列

p=a 是行指標 指向行 但是p+1後 就變成p=a[1]了 所以那裡要寫成p=*a

而p=*a p+1後 就變成p指向a[0]+1

二維陣列與指標,二維陣列a的「列指標」與「行指標」有什麼聯絡

int m 可以分步驟來理解 m意思是引用這個整型數,m代表指向這個整型數的指標,m代表指向 m的指標,也就是傳說中指向指標的指標 一般情況下形參為指標型別時,可以傳送陣列名作為實參,也即陣列的起始地址,二維陣列的可以看成是多個一維陣列組成的 用這種二維指標是不能操作這種二維陣列的,二維指標就是指標...

vb 二維陣列宣告問題,VB 二維陣列宣告問題

vb規定,dim 陣列必須要求常數表示式,否則會出錯。但此問題可以這樣解決 dim m1 as integer,m2 as integerdim a as integer dim b as integer dim c as integer m1 2 這裡可以改為m1,m2從資料庫中讀取的數值m2 2...

C二維陣列兩個二維陣列的乘積求助

陣列的長度從來都是指某一維度的長度,在哪個語言裡都是。你可以說二維版陣列第一 維度權的長度 第二維度的長度乘積是二維陣列的元素個數,但沒有 二維陣列的長度 這個概念。array 有 getlength int 這個方法,可以得到指定維度的長度。用c 編寫一個控制檯應用程式,求二維矩陣的乘積 void...