p 3 與 p 3 的區別

2021-07-23 05:52:38 字數 669 閱讀 2408

(*p)[3]與*p[3]的區別

int p[3] p是乙個陣列,此陣列有3個元素,每個元素都是int型別,也就是指向整型資料的指標型別。

int a=10,b=20,c=30;

int*p[3]=;

而int(*p)[3]中的p是乙個指向陣列的指標,此陣列有3個int型別的元素。例如:

int a[3]=; 那麼p就是指向這個陣列a的指標。

int(*p)[3]=&a; // 這裡賦值一定要用取位址符號。也就是取陣列a的位址。

不可以這樣賦值: int(p)[3]=a; // error :型別不相容。a本來是陣列型別,是不可以賦值給int()[3]這個型別的。

但是這樣是可以的int p1=a; // ok 因為a可以隱式轉換為int型別,其值實際上就是陣列第乙個元素的位址,也就是&a[0]

#include "stdio.h"

#include "stdlib.h"

void main();

int* n[3] = ; //指標陣列,儲存的是int 型別的指標

int (*p)[3] = &a; //陣列指標。p是儲存指向乙個陣列的指標

printf("%d",*(*(p)+1)); //輸出為2

}

(P3)系統程式設計介紹

e2big 引數列表太長 eaccess 許可權不足 eagain 重試 ebady 錯誤的檔案描述符 ebusy 裝置或資源忙 echild 無子程序 edom 數學引數不再函式域內 eexist 檔案已存在 efault 位址錯誤 efbig 檔案太大 eintr 系統呼叫被中斷 include...

排序(左神初級)p3

穩定的排序演算法有 冒泡 插入 歸併 桶排序 不穩定的演算法 快排 選擇 堆排 1.計數排序不基於比較,準備max值 1個桶 2.遍歷陣列,數值為a時,把桶位置為a的數加一 3.重構陣列。class solution int minm int max int maxm int min 找到最大最小值...

P3裡的你的歌

燈光也暗了,低聲了,口中的棉花糖也融化了,我的心也開始想你了,那天你要回家,我是多麼的想送送你,可你,那天你要用p3,我是多麼的想借給你,可你,可你還是 接受 了,那天,我覺得自己是那麼的死皮賴臉,幾天後的那天,p3回來了,回來的p3裡存著你最喜歡的歌,又是 那天 那個情人節,那是乙個 真正 的情人...