一維陣列指標 num和 num的區別

2021-09-12 10:49:44 字數 701 閱讀 8553

一維陣列指標[num和&num的區別]

#include#includevoid main()

; int *p = num;

int(*pa)[10] = num;

printf("%x\n%x", &num, num);

printf("%d\n%d", sizeof(*num), sizeof(*(&num)));

printf("\n%d\n%d", sizeof(*p), sizeof(*pa));

system("pause");

}

num 跟 &num都表示陣列的首位址。但解析的長度不一樣     

num 等價於 int *p                           (指向元素的指標)    //4

&num 等價於  int(*pa)[10]              (指向陣列的指標)     //4*10=40 

關於 int(*pa)[3] 的理解

若有定義int(*p)[3];則定義了乙個名為p的指標變數,表示p是乙個指標變數,它可以指向每行有三個整數(即int型)元素的二維陣列.p是指向一維陣列的指標變數。這句話的理解是首先(*p)[3]是乙個指向一維陣列的指標變數,意思就是p這個指標是指向乙個含有3個元素的陣列的,那麼p指標每一次加1就相當於把p中存的位址加6(前提是int型別佔2個位元組,在vc中是佔4個位元組)。

指標和一維陣列關係

include int main int ptr score ptr score score 陣列名為陣列首位址,和陣列首元素的位址一致。printf n第一種表示方法 n for i 0 i 5 i printf n第二種表示方法 n for i 0 i 5 i printf n第三種表示方法 n...

一維陣列 指標

下標法 容易理解 元素 a i 指標法 推薦使用 元素 a i 因為編譯器將a i 解釋為 a i 需要時間,所以直接將a i 寫成 a i 可提高執行效率 下標法 元素 p i 指標法 元素 p i 都不是簡單的 1,1指的是1個記憶體單元 p p p 1,p的值改變了 p 1並沒有改變p的值 a...

安裝numpy 機器學習的一般流程與NumPy安裝

美麗生靈 生日快樂 人工智慧現在越來越火熱,逐漸走進人們的視野中,利用人工智慧由自動駕駛 語音識別 影象處理等,這些火熱的發展也離不開硬體的發展,也離不開機器學習的計算機演算法 讓機器模擬人 思考 學習 實現演算法最主要的是用到python語言,就要用到numpy pandas以及matplotli...