7 設有定義 int n 0,p nq則以下選項中,正確的賦值語句是A p 1 Bq 2 C q p Dp

2021-03-27 07:39:31 字數 2646 閱讀 4991

1樓:匿名使用者

n是整數,p是整數指標,q是雙重指標。

a:p=1 屬於將地址1賦給p,非法。

b:*q=2 這裡*q相當於一個整數指標,問題同上,非法。

c:q=p 相當於把p的地址賦給q,不能說錯,但是不同維數的指標互相賦值,容易出錯。

以上三種都是編譯沒有問題。

d比較符合規範而已。

2樓:匿名使用者

這題出的是有點問題,按他這意思,q應該是一個指向指標的指標,所以正確答案應該是d,

但是不能說其他的賦值是錯誤的,只是對這個題來說沒什麼意義而已。

(6) 設有定義:int n=0,*p=&n,**q=&p;則以下選項中,正確的賦值語句是

3樓:匿名使用者

選d.a.p是一個指標,不能給它賦一個整型的值1b.

*q仍然是一個指標,*q就是p.所以也不能給它賦一個整型的值.c.

q=p;q是個二級指標,p是一級指標,不能把一級指標賦給二級指標.*p=5,即給n賦值為5,正確.

4樓:匿名使用者

d p是指標q是指向批針的指標,記錄的是地址多翻下書這不太好理解

5樓:匿名使用者

我打假 來了 如上,*q是指標,那麼p就存的是他的地址,就是n 的記憶體中的位置,表示為&n而**p = &q,說明**p是個指向*p的指標 即是**p的值為n,而*p裡面裝的呢是p,即是&n,n的記憶體單元**p 裡面裝的是*p的記憶體單元,在這兒**p 和*p 和q 裡面都裝的是記憶體,是資料在機器裡面的地址,對於這種我們不能夠用這種直接賦值的方式改變它 故而我們看a,b,c 都是這樣 所以abc錯誤,他們都在改人家記憶體

設有定義:int n=0,*p=&n,**q=&p,則下列賦值語句哪個是正確的? a.p=1;b.*q=2;c.q=p;d.*p=5;

6樓:匿名使用者

答案是copyd

n,p,q這三者的關係如圖所示。

a錯。p是指標,它裡面存放的

bai是地址值,而1是整數,du型別不符,不能zhi賦值。

b錯。q是指向指標的指標,*q相當於寫成p一樣。錯dao誤情況參考a的解釋

c錯。p是指向整型變數的指標(一級指標),可以存放整型變數的地址。而q是指向指標的指標(二級指標),可以存放另一個一級指標變數(如p指標)的地址,但不能存放整型變數的地址。

此句相當於寫成了:q=&n。

int n=0,*p=&n,**q=&p;則以下選項中,正確的賦值語句是(d) a p=1

設有定義語句:int =0,*p=&你,*q;以下選項正確的是? a;p=1 b:p=q c:*p=*q

7樓:含笑把燈吹

使用了逗號操作符,bai實際上等於:du

int n = 0;

int *p = &n;

int *q;

所以,zhin是整型,p,q是整型指標。a錯了,c也錯了,*p是解引用操作,得到的是p所指向的記憶體區域的值。它不能作為一個「左值」(left value,也dao即location value,就是地址值)。

只有b是對的,使p指向q所指向的記憶體區域。

若int n=0,*p=&n,**q=&p;則選項(d)*p=5正確。請問這是怎麼回事兒?

8樓:xx長袖善舞

n是變數,p是指向變數n的指標,至於q是指標的指標。

*p表示引用指標所指向的儲存單元,即等價於n,所以*p=5等價於n=5...

q指向p,*q等價於p,所以**q等價於n。。。

若有說明:int n=2,*p=&n,*q=p;則以下非法的賦值語句是

9樓:匿名使用者

p*n是非法的bai。

指標(pointer)是程式語言中du的一個物件,利zhi用地址,它的值直dao接內指向(points to)存在電腦儲存器中另容一個地方的值。

題目中int n=2,*p=&n,*q=p 定義整型n,p是一個指向n的指標,它的值為n的地址。q是一個指標,q的值和p的值相同,也就是它倆是同樣的地址。

p=q使得p的值等於q的值,它倆都是指標,可以賦值。*p=*q意思是指標q指向的值賦給q地址指向的值。n=*q是將指標q所指向的值賦給n。

p*n,因為兩者不是同一型別資料,所以不能進行運算,所以這個是錯的。

10樓:聽不清啊

d p*n 就是非法的,不能正確執行。

11樓:匿名使用者

p是指標,n是整數 不能使用*號

不能將int *轉化為int型

若有定義:int n=2, *p=&n,*p=q ;,則以下非法的賦值語句是。 a, p=q; b. *p=*q; c.n=*q; d.p=n; 5

12樓:始

d寸p指向地址。p=&n可以。n為整形數,不是地址

13樓:匿名使用者

{ int a=10; a =a-=a*=a; printf(

請問自定義函式中int n的n有什麼作用?下面的i n是怎

main 中的方法long f int n 呼叫函式long f int n 前一個n中的數值傳遞給呼叫函式中的n。i long f int n 是定義的一個函式,為了通用性,你在實際呼叫該函式的時候 會給 這個n賦值的,如 f 9 編寫一個函式,函式原型是void f int a int n,in...

c語言設有定義floatx1234567,則執行

lz注意,先不管是不是輸出 對於 int x 100 0.5 100.0這個算式被強制轉換為整型的是分回子部分,而分子除以答100.0這個浮點型的資料之後整個算式就又變回浮點型了,要輸出的資料真是整型也沒事,因為你現在是按float型輸出,它會再次強制轉換資料 單精度浮點型在輸出時保留小數點後6位 ...

設有變數定義charaainti3,j

a定義為字元 a a 在ascii碼中是第97個 設int x 3,y 5 表示式x y 3 a 10.0的值是 1 設int型變數x有初始值3,則表示式x 5 10的值.首先,x 是後置加加,先使用變數,然後變數再回加1.所以答,x 先使用變數的值3與5相乘,得到15 由於x為int型變數,所以,...