C語言用指標解遍歷陣列

2021-03-05 09:21:43 字數 549 閱讀 7788

1樓:99承情

指標解遍歷陣列例題:

#include

int main();

int i, *p = arr, len = sizeof(arr) / sizeof(int);

for(i=0; iprintf("%d ", *(p+i) );}printf("\n");

return 0;

}陣列在記憶體中只是陣列元素的簡單排列,沒有開始和結束標誌,在求陣列的長度時不能使用sizeof(p) / sizeof(int),因為 p 只是乙個指向 int 型別的指標,編譯器並不知道它指向的到底是乙個整數還是一系列整數(陣列)。

所以 sizeof(p) 求得的是 p 這個指標變數本身所占用的位元組數,而不是整個陣列占用的位元組數。也就是說,根據陣列指標不能逆推出整個陣列元素的個數,以及陣列從**開始、到**結束等資訊。

2樓:匿名使用者

#include

void print(int *p, int len)}int main()

//我暈,竟然不採納的。

c語言陣列越界,C語言陣列(指標)越界訪問

第乙個和第二個陣列a 2 按指標說就是指向a 1 也就是30的記憶體下乙個位置,兩種程式排列不一樣,第二個下乙個應該是i的位置,第乙個不一定,可能是堆裡面的隨機數。恩。打個比方說有一天你去賓館訂了個房間。然後再牆壁上鑿了個洞看隔壁住著誰。後來又有一天你又去訂了乙個房間,然後又在牆壁上鑿了個洞看隔壁住...

c語言中的指標陣列和陣列指標的區別

指標陣列 陣列裡的每乙個元素都是指標如 p 10 裡面的 p 0 到 p 9 都是指標 可參考 http baike.陣列指標 指向乙個陣列的指標,如 arr 10 是乙個陣列,讓乙個指標指向這個陣列 p arr 訪問時通過 p n 或 p n 訪問元素值,n為元素索引值 可參考 http baik...

陣列指標和指標陣列的區別,c語言中的指標陣列和陣列指標的區別

int a 3 4 這個bai無需多說,就du是乙個二zhi維陣列。int p 4 就相當於daoint p 4 它就是乙個二維陣列的指標,可以 專指向乙個第屬二維度為4的二維陣列。而a就是這樣的陣列,因而下面是合法的。p a int p 3 是指標陣列。說白了,就是定義了三個指標,分別為p 0 p...