若有定義 Int a 10p a,則 p 5 表示()

2021-04-12 07:18:52 字數 2775 閱讀 3805

1樓:李修炎

選a ,因為*p=a,這時是把陣列a的首位址傳給了指標p,而陣列的定義是從a[0]開始的,所以p+5表示的是元素a[5]的位址,希望你現在明白了

2樓:匿名使用者

b*(p+5)表示p+5這個位址指向抄單元內容,當然是int的,所以不是位址

p=a;的賦值後,p存放的位址就是陣列起始位址也就是陣列元素a[0]的位址,*p可以寫成*(p+0),p[0],相當於a[0]

*(p+5)相當於p[5],a[5],即變數a[5]的內容所以應當選擇b

3樓:艾薩克

b既然有p = a

那麼 *(p + 5) p[5] *(a + 5) a[5] 都是一樣的

若有定義int a[10],*p=a;,則p+5表示什麼

4樓:匿名使用者

a 是個常量,不能變化,但是p是個指標變數,可以加減,p的加減與p的型別有關,如果p是個int 則,每次加四個位元組,就是int 型的長度,其它的也是相同的。char 每次加乙個位元組。

p+5代表第六個數值的位址。即*(p+5)=a[5];

不知道你是否明白,如果不清楚的話,加我好友,咱們共同**

c語言題:若有定義int a[9],*p=a;則p+5表示( )

5樓:匿名使用者

答案選:b

剛剛看到a[5]就選了

*p=a;指向的就是a[0]

p+5就相當於向後移動5個,就是a[5],表示位址如果是*(p+5),就表示值

6樓:匿名使用者

你好,選b。

int *p = a表示指標p指向陣列a的首位址。也可以說是a[0]的位址。所以p+5指向a[5]的位址

若有定義int a[10],*p=a,則p+6表示( )。 a.陣列元素a[5]的值 b.陣列元

7樓:踏雪也尋梅

c,定義了指標p指向a[0]的位址,p+6代表移動了6位,從0開始,1,2,3,4,5,6,正好移到到了a[6]的位置,就指向a[6]的位址了,其實*(p+6)與a[6]是等價的

8樓:匿名使用者

* p = a ; 的意思是p 指向陣列a的首位址,

p+ 6 表示指標向後移動6個int的位置,他指向的位置是a[5]的位置,

9樓:聽不清啊

p+6表示( 陣列元素a[6]的位址 )

10樓:匿名使用者

可能是b,這是c語言的知識,記不清楚了

若有定義:int a[]={2,4,6,8,10,12};*p=a;則*(p+1)值是(),*(a+5)的值是()

11樓:匿名使用者

恭喜你 答對了,呵呵。其實這個問題你只需要在vc的編譯器上執行下就可以知道了,而且多動手寫程式可以調動積極性。

若定義:"int a[10],*p;p=a;"則執行"p=p+5;"後,與*p不相等的是()。

12樓:保春雲雀

dp=p+5表示將指標p從a的頭

移du5個數zhi據。即a[5]處。

*(a+5)可以看作dao有乙個臨時內指標變容量*temp

=a+5

(p+5)同樣可以看作有乙個臨時指標變數*temp=p+5=a+5

而a=a+5表示將a+5處的位址賦值給a,但是陣列標量名的指標位址為a[0]是常量指標,因而是錯誤的。

13樓:狄廣英勤璧

cp已經是&a[5]了,*(p+5)或p[5]都是a[10]

da是常量,不是左值,不能被賦值。但若不考慮它,p並未改變,所以*p就是*p

若有以下定義,則p+5表示_______. int a[10],*p=a; a)元素a[5]的位址 b)元素a[5]的值 c)元素a[6]的位址 d)

14樓:李修炎

選a ,因為*p=a,這時是把陣列a的首位址傳給了指標p,而陣列的定義是從a[0]開始的,所以p+5表示的是元素a[5]的位址,希望你現在明白了

15樓:匿名使用者

34 a 35d 36b 37d 38c

13. 若有定義:int x[10], *p=x;,則*(p+5)表示( )。 a. 陣列元素x[5]的位址 b. 陣列元素a[5]的值 c. 數

16樓:洛雨曦

//int x[10], *p=x;,則*(p+5)表示( )。

int x[10],*p=x:表示定義了乙個陣列,讓p 指向了x 這個陣列,陣列名是位址常量,把地專址常量儲存在指標變數屬裡邊了.

而這時候指標可以寫成陣列,陣列也可以寫成指標:x[i]=p[i]=*(x+i)=*(p+i);因此*(p+5)=x[5]

17樓:匿名使用者

果斷bai是b,關於這種問題

du,建議樓主自己調zhi試一下,不但可以解決問題,還dao可以加專深理解

你可以編譯一下

#include

void main()

;int *p=x;

屬printf("%d",*(p+5));}

18樓:

b,*p=x相當於*p=x[1];

若有定義「int a 51,2,3,4,5p a則以下表示式中值為3的是A a Bp 2 C p 2 D a

c.p 2 沒有乙個是指向a 2 的,但c的結果是1 2 3 若已定義 int a 5 0,1,2,3,4 p a,則以下輸出結果為3的是 選b。p 3 等同與a 3 陣列的名字a,是表示陣列首位址的位址常量。其值就是 a 0 p a 那麼p的值也是內 a 0 p和a都表示位址容,所以 就是取位址對...

若有說明inta41,2,3,4,

呵呵 他所謂的第一維就是a後面的裡面的預設哈 所以應該是3 因為這是個二維陣列哈 所以只有 第一維和第二維哈 應該明白了吧?不懂的話再問哈 大小?第一維里的是1,2,3,4,以此類推,第二維是5,6,7,8,而第三維則為9,0,0,0 若有說明 int a 3 1,2,3,4,5,6,7,8,9,1...

定義int a,定義乙個int a 2 3 , p 3 ?

a 雖然是代表 2維陣列a 的首位址,但 要用來給指標陣列 p賦值,應該用a 0 這樣 才可能對應 吧 int a 2 3 p 3 是復int a 2 3 制int p 3 的意思,前者是宣告乙個bai2行3列的int型二維 du陣列,a代表a 0 的位址 a 0 顯然a就是下標zhi為0的那 da...