1樓:背起揹包去旅行
問題出在:你對指標的指向的型別沒有弄清楚
1.int *p 是指向乙個整形變數的的指標變數,也就是說指標變數p是指向乙個整形變數的。
2.你將a賦給了p,請問a裡面存放的是乙個整形變數嗎?顯然知道二維陣列的就明白a代表了第一行的首位址,即你讓p指向了陣列第一行的所有元素(p變成了乙個行指標),所以a不是不能賦給p的,因為p是指向乙個整型變數。
p=a[0]是可以的,p是指向第0行第0列的元素(即乙個整型變數)。
最後,二維陣列的指標要好好研究,指標是c語言的靈魂。
2樓:
指標是博大精深的,不得不說
指標是有型別的,你這裡不能把int (*)賦值給int *如果你是想訪問a陣列的第一維,可以用:
p=a[0];
還有問題hi我
3樓:匿名使用者
2次元的 指標不能 int * p 定義。
應該是 int (*p)[4]; 注意,列數一定要和要指的陣列列一樣這樣才能讓 p=a 成立。
這是二次元陣列的 指標用法,就是這麼規定的。
4樓:艾佳
printf("p=%d\n",*(p++));
或printf("p=%d\n",*p++);試試
5樓:匿名使用者
a[4][4]=5*5 25個數字
C語言問題,c語言問題
int a 4 void main int a 2 這種局 bai部變數,會du隱藏掉上一級 定義zhi的同名變數,下面dao 也是一樣回 中有效。所以上面的復合語句中,會輸出0,下面呼叫sub1時,實際上傳入的是main中的int a 2 又有a a 1,所以會輸出1,下面也是一樣的,main中的...
C語言問題,c語言問題?
include include include typedef struct nodelinknode,link void main link pa s int da int flag 0 pa head 讓pa指向頭結點 dowhile flag 0 link pb head pb pb next...
C語言問題,C語言問題,求助
while語句的執行順序 1.判斷x的值 非0為真,0為假 2.執行 3.執行 裡面的 這裡是空,所以沒任何動作。所以會一直迴圈到x 0,判定為假,迴圈終止。接著執行減減,最後列印結果為 1 c語言問題,求助 這題是迷惑人用的.因為迴圈內部沒有break,所以for會一直執行下去,直到a 11,這時...