84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
#include<iostream.h> void main(){ int n[][3]={10,20,30,40,50,60}; int (*p)[3]; p=n; cout<<p[0][0]<<","<<*(p[0]+1)<<","<<(*p)[2]<<endl; }
跪求解答,这么声明的话p是指向一个有三个元素的数组吗?
欢迎选择我的课程,让我们一起见证您的进步~~
哥們你這是怎麼了哈哈太久沒碰這麼基礎的玩意了推薦你一本書你必須知道的495個C語言問題再說你的問題int (*p)[3] 中的p是指向數組的指針,此數組有3個int型態的元素所以p和n可以等
p的型別應該是int[3]~
int(*p)[3] 中的p是一個指向數組的指針,此數組一維空間不確定,二維空間是三個元素,所有元素都是int型的,所以用n來賦值給p的。 在c語言中*p相當於是一個長度不確定的陣列。 所以int(*p )[3]相當於int p[][3]
p似乎是個長度不限的 int型陣列的首位址,然後前6個就是10到60,而後面的則是隨機亂碼。
噗,你學的是譚X強? C++主函式的宣告從來都沒有這種寫法:
void main()
只有
int main()
和
int main(int argc, char *argv[])
然後,關於變數宣告的讀法,從變數名稱開始,由(括號)內到外,從右到左:int (*p)[3]p is apointer to array of 3 elements ofint
int (*p)[3]
哥們你這是怎麼了哈哈
太久沒碰這麼基礎的玩意了
推薦你一本書你必須知道的495個C語言問題
再說你的問題
int (*p)[3] 中的p是指向數組的指針,此數組有3個int型態的元素
所以p和n可以等
p的型別應該是int[3]~
int(*p)[3] 中的p是一個指向數組的指針,此數組一維空間不確定,二維空間是三個元素,所有元素都是int型的,所以用n來賦值給p的。
在c語言中*p相當於是一個長度不確定的陣列。
所以int(*p )[3]相當於int p[][3]
p似乎是個長度不限的 int型陣列的首位址,然後前6個就是10到60,而後面的則是隨機亂碼。
噗,你學的是譚X強?
C++主函式的宣告從來都沒有這種寫法:
只有
和
然後,關於變數宣告的讀法,從變數名稱開始,由(括號)內到外,從右到左:
int (*p)[3]
p is a
pointer to
array of 3 elements of
int