c語言裡的指標問題,c語言裡的一個指標問題

2022-11-20 06:00:11 字數 690 閱讀 5948

1樓:

3全部那是因為你 a陣列內容設得比較巧合

**p外層迴圈分別對應a[0][0],a[1][0],a[2][0]也就是0,4,7

而內層迴圈:

for(j=0;j<4;j++)

printf("%-6d",**p+j);

我就就以a[0][0]為例

輸出第一個:a[0][0]+j(j==0)==a[0][0]==0第二個:a[0][0]+j(j==1)==1剛好值==a[0][1],值剛好對應上了,所以你覺得是一樣

所以,只要你的a陣列的值,每一行的值不是依次遞增,結果肯定不是一樣的:

#include "stdio.h"

void main(void)

,,};//,,};

int i, j;

int (*p)[4];

//輸出部分

for (p=a;p < a+3; p++)printf("\n");

}//輸出部分

for (p=a;p < a+3; p++)printf("\n");

}你可以看到,結果不一樣了吧

2樓:不掛

不對吧。。。。此結果非彼結果。。。 *(*p+j)是通過讀地址所存的值,而**p+j是通過計算和所得,恰巧相同。。。不信你打亂你的二維陣列的元素。。。就知道了。。。。。

C語言指標問題,C語言指標問題

include int main void max min sz 0 for i 1 ip i printf max d position d n max,j 1 printf min d position d n min,k 1 return 0 c語言指標問題 10 最好貼上完整程bai序 或標...

C語言的問題,指標陣列,c語言指標陣列

改變不了,字串常量是改不了的,你可以試試char p aaaaa p 1 b 這樣是改不了的 只能定義二維陣列才可以改 char p 3 100 這樣才可以改,不要問為什麼,字串常量就是不能改 直接讓指標指向另一個字串即可 p 0 aaaa 這樣定義指標指向的字串是無法修改的。c語言指標陣列 p是i...

一道c語言指標問題,一道C語言的指標問題

int a 10 是指標陣列,每個a i 都是指向 int型的指標 比如 int abc a 0 abc int a 10 是陣列指標,a 是指向一個有10個元素的int型陣列 比如int abc 10 a abc int a 10 a是陣列,a裡存放的是10個int型指標 int a 10 a是指...