intptr 是什麼意思,int ptr 3 是什麼意思

2021-05-02 11:28:07 字數 2801 閱讀 5637

1樓:

這是指向整型陣列的指標。

可以根據優先順序來看ptr到底是什麼:

int (*ptr)[3]; 因為有(),所以*ptr優先順序最高,他們要首先結合,也就是說ptr首先是個指標。然後是和後面結合,此時可以看出他是指向陣列的指標,最後通過int可以看出,他是指向整型陣列的指標。

2樓:匿名使用者

這是定義一個指向有三個整形數陣列的指標。

3樓:匿名使用者

樓主你好。首先學習指標是有好多概念容易混淆。我來幫你區別一下:

1、int(*p)[3];------ptr為指向含3個元素的一維整形陣列的指標變數(是指標)

2、int *p[3];-------定義指標陣列p,該陣列由3個指向整型資料的指標元素組成(是陣列)

3、int(*)[3];--------實際上可以看作是一種資料型別。也就是第一個(int(*p)[3])中定義的p的資料型別

其實你要看他到底是什麼,就是要看他最先和誰結合。 比如1中p先與*結合,那就說明p本質是一個指標;而2中p先與後面的[3]結合,說明他本質是一個陣列。再慢慢理解。

希望能幫到你。如有疑問可以再問我

4樓:手機使用者

翻譯一下:

int *ptr2 = ***;

宣告一個整形指標指向某個地址;

這個地址是:(int*)((int)a+1);

(int)a,a是陣列名,也是陣列首地址,一般是32為的某一個數值,比如說

a =0x12345678,(int)a將a轉換成整型值,0x12345678,然後將這個數值加1,

變成0x12345679,然後再將其轉換成地址,兜了一大圈,其實就是將ptr2指向a的下一位元組。注意不是陣列的下一個元素,因為一個元素有4個位元組,下一個元素地址應該是0x1234567c。

注意此處int *ptr2 = (int*)((int)a +1);

與int *ptr2 = (int*)(a +1); 的區別,前者是使之指向下一位元組,後者是使之指向下一個元素。

不過,這樣做藐視沒什麼意義。

int *ptr[3] int (*ptr)[3]各代表什麼意思?

5樓:匿名使用者

int *ptr[3]:

1、ptr[3] - ptr是一個陣列

2、int * - 陣列ptr的元素型別為int *int (*ptr)[3]

1、(*ptr) - ptr是一個指標

2、(*ptr)[3] - ptr指向含有3個元素的陣列3、該陣列元素型別為int

6樓:師漾包凌柏

樓主你好。首先學習指標是有好多概念容易混淆。我來幫你區別一下:

1、int(*p)[3];------ptr為指向含3個元素的一維整形陣列的指標變數(是指標)

2、int

*p[3];-------定義指標陣列p,該陣列由3個指向整型資料的指標元素組成(是陣列)

3、int(*)[3];--------實際上可以看作是一種資料型別。也就是第一個(int(*p)[3])中定義的p的資料型別

其實你要看他到底是什麼,就是要看他最先和誰結合。

比如1中p先與*結合,那就說明p本質是一個指標;而2中p先與後面的[3]結合,說明他本質是一個陣列。再慢慢理解。希望能幫到你。如有疑問可以再問我

#include int main(void) { int a[][3] = {1,2,3,4,5,6}; int (*ptr)[3] = a;

7樓:匿名使用者

1 #include

2 3 int main(void)

4 ;//定義一個二維陣列,前一個下標沒有直接給出,

6 int (*ptr)[3] = a;//定義一個指標指向陣列,記住,ptr指向的是一個二維陣列,也就是ptr增一,

7 //那麼就相當於a這個二維陣列的第一個下標增一,我覺得你不明白的就是這

8 printf("%d %d\n", (*ptr)[1], (*ptr)[2]);//(*ptr)[1]指向的是a[0][1].(*ptr)[2]指向的是a[0][2]

9 ++ptr;//ptr 自增,

10 printf("%d %d\n", (*ptr)[1], (*ptr)[2]);//由於前ptr自增(*ptr)[1], 指向a[1][1]。(*ptr)[2], 同理a[1][2]11

12 return 0;

13 }

如果上面的你看的不是很懂,畫個圖你看,

陣列,a[3]=如下,

a[ ][1] a[ ][2] a[ ][3]

a[1][ ] 1 2 3

a[2][ ] 4 5 6

然後,定義的ptr指向如下,

a[ ][ ] a[ ][1] a[ ][2] a[ ][3]

ptr a[1][ ] 1 2 3

ptr+1 a[2][ ] 4 5 6

額,水平有限,能幫到你的就只有這些了

8樓:麥子戰士

int (*ptr)[3]指標陣列指向 int a[3]

然後輸出陣列a。

是什麼意思,是什麼意思

喜 飛 跳 即活潑亂跳,多用在表開心,興奮。意思是 蹦跳,跳躍,彈跳。我給大家安利一下 這句話是什麼意思?我給大家安利一下 baidu 意思是我給大家推薦以下。zhi安利是一 dao個常見的版網路用語,本來是一箇中性名詞,後權來發展為中性動詞,意思類似推銷,最後引申為帶有一定感 彩的動詞意為強烈推薦...

是什麼意思, 是什麼意思

表情符號,微笑。網路符號改變的不僅僅是人類資訊傳播的速度和質量,還極大地豐富了人類表情傳意的方式,形成了獨特的網路語言,其中又以大量的非言語的表情符號為其特徵。表情符號用來生動呈現和描摹日常面對面交際中的非言語資訊,使雙方如聞其聲,如見其人。人們在日常的溝通中飄蕩著名為 emoji表情 的幽靈。很可...

N是什麼意思,請問N是什麼意思是什麼意思?

n 1中的n指的是每工作1年支付1個月工資的經濟補償。所謂的 1,是指用人單位解除勞動合同但是未提前30天書面通知勞動者時,額外支付的1個月工資。number 號碼 比如tax reg n 稅務註冊號 n 開放分類 化學 字母 元素 現代漢語 n,n 是拉丁字母中的第14個字母。請問 n 是什麼意思...