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

2021-03-03 20:31:29 字數 2660 閱讀 6536

1樓:匿名使用者

改變不了,字串常量是改不了的,你可以試試char *p = "aaaaa";

p[1] = b;這樣是改不了的

只能定義二維陣列才可以改

char p[3][100] = ; 這樣才可以改,不要問為什麼,字串常量就是不能改

2樓:千鋒教育

直接讓指標指向另一個字串即可

p[0]="aaaa";

3樓:橙

這樣定義指標指向的字串是無法修改的。

c語言指標陣列

4樓:千鋒教育

p是int型別指標,指向陣列a的第1個元素即一個一維的陣列首地址所以p[1]相當於a[0][1]所以printf("%d\n",p[1]);

輸出2 。 int **pp =pa 是宣告瞭一個指向pa的指標,而pa又是指向a首地址的int型別指標。pa指向的是a的第一維,pa[0] = a[0] ,pp[2][1]相當於a[2][1]而a陣列的[2]中只初始化了[2][0]位置的7,那[2][1]位置就是預設的值0,所以printf("%d\n",pp[2][1]);輸出0

5樓:匿名使用者

void main()

,,};

int *pa[3]=;

int *p=a[0];

int **pp=pa; //這句什麼意思??//定義了指向指標的指標變數

printf("%d\n",*a[1]);

printf("%d\n",*(*(a+1)+1));

printf("%d\n",*pa[1]);

printf("%d\n",p[1]); //為什麼輸出為2 ???//這裡應該是輸出了一個地址

printf("%d\n",pp[2][1]);} // pp不是地址嗎,不加* 嗎?//指標指向陣列的首地址之後是可以當陣列名用的。

c語言陣列問題

6樓:千鋒教育

你的**問題有以下幾個:

1、min和max沒有初始化

2、對於a[min]和a[max]沒有做迴圈參考**如下:

#include

main()

printf("最大數是%d,下標是%d,最小數是%d,下標是%d\n", a[max], max, a[min], min);}

7樓:天雨下凡

#include

void main()

c語言新手 陣列問題

8樓:匿名使用者

(a+i+j)=((a+i)+j) ,

理解運算優先順序就好了, 裡面的那個括號 可有可無

9樓:斯坦恩貝格(北京)電子****

原解析有誤。

二維陣列其實就是i個具有j個元素的一維陣列,因此a[i][j] --> (*(a+i))[j] --> *(*(a+i)+j)

c語言陣列與指標相關問題,謝謝

10樓:一顆程式猿

*p[1] 相當於 p[1][0], 值為4, 加上1就是5了

11樓:千鋒教育

注意操作符的優先順序,第三個*p[1]+1中最高,所以是p[1]即為34f9a8,再是*指標取內容操作符,即取出地址34f9a8的內容即為4,再+1所以得到5

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

12樓:黑丶雨

指標陣列:陣列裡的每一個元素都是指標如*p[10],裡面的 p[0] 到 p[9] 都是指標;

可參考:http://baike.

陣列指標:指向一個陣列的指標,如 arr[10] 是一個陣列, 讓一個指標指向這個陣列 p = arr;

訪問時通過 *(p + n) 或 p[n] 訪問元素值,n為元素索引值;

可參考:http://baike.

13樓:育知同創教育

int (*p)[4]; // 定義一個陣列指標,指向含4個元素的一維陣列,陣列元素是int型別。

int *p[4]; // 定義一個指標陣列,陣列中每個元素是一個指標,指標指向**就要根據程式來定了。

判斷陣列指標與指標陣列主要通過運算子的優先順序來判斷。

int (*p)[4]; // 由於( )的優先順序高,說明p是一個指標,指向一個一維陣列的指標

int *p[4]; // 由於[ ]的優先順序高,先與p結合成為一個陣列,再由int*說明這是一個整型指標陣列

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

與編譯器無關,只與記憶體管理機制有關,是作業系統級別的問題,堆疊的讀取方式只是資料結構上的不同,在機器層面,依然是單純的記憶體讀寫操作 陣列越界訪問的危險性不好評估,但確實是最嚴重的危險之一 結果基本上會100 崩潰,但是崩潰的原因很可能不一樣,就算是同一段越界 跑幾遍,原因也可能是不一樣的 指標越...

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語言指標問題

指標變數和普通變數沒有什麼區別,指標32位四位元組,裡面儲存的是一個記憶體空間的地址,就像一個整形變數int a,a就可以代表一個整數,一個指標變數int p,p就可以代表一個地址資料,而 地址,代表去這個地址指向的記憶體空間取出裡面的內容,因此如果是要取出這個指標所指向的記憶體裡面的內容就是 p,...