C語言中這樣的語句對嗎p,C語言中這樣的語句對嗎 p a

2022-03-30 08:34:32 字數 803 閱讀 4013

1樓:桑愛景戲辛

首先要明白指標是什麼?指標就是乙個4位元組的值(32位機器)用來存放乙個具體的位址,*號是用來取值的也就是取相應位址上的值,當然也可以對相應位址位置賦值;&是取位址符,&a表示去變數a的位址,這句完全是可以的。把a的位址(乙個32位的值)付給指標p所指向的位置(當然必須指標p的型別是32位的),在實際應用中這樣用是不對的,應該是p=&a;用指標p指向a的位址。

2樓:將素枝閔珍

*p=&a;

看在什麼情況

第一種int

a=0;

int*p=&a;

這在定義時候是完全沒問題的,你改寫一下

int*

p=&a;

這個是完全等價的

那麼看見的就是給p賦值了,和下面的等價

inta=0;

int*p=0;

p=&a;

第二種int

a=0;

int*p=0;

*p=&a;

這個編譯是會報錯的,&a得到了a的位址

就是乙個int*

的資料,複製給*p

,p是int*

,*p就是int

int*到int

就會報錯!

第三種int

**p;

inta;*p=

&a;這個朋友的也是對的,你再拆開定義

看看(int*)*p

當然括號只是為了理解,

這裡p是指標的指標(當然也是指標,只是指標指向的值又當作指標),那麼*p也就是指標,給乙個指標賦值位址是沒問題的

c語言中,這個語句是什麼意思啊C語言中For語句後面的括號裡有兩個分號是什麼意思啊?

tp a a b b tp是交換了ab的指向,不影響主函式,t a a b b t是改變了位址上的值,也就是把i和j的值互換。所以函式中 a b的輸出對應是j 3,i 7,主函式輸出ij這個沒什麼好說的,p和 q還是ij的值。1 加 交換的是位址,會改變主函式中i和j的值,swap交換的是i和j的位...

C語言中的for語句是很難的?該這樣學呢

怕什麼.我也是大一走過來的,重要的是興趣 我大一掛了好多科,惟獨c考到了90多.我們班人都稱我強人.今年學習資料結構,老師檢查我們程式時走到我跟前說 你的不用檢查了,我相信你。我是我們班唯一乙個有這種待遇的人。加油。真的不難。沒意志成不了事 這點小問題你就想放棄麼?那你永遠錯過了程式設計世界的美妙 ...

問個C語言中for語句巢狀if的問題

d 0也就是說d為真,那麼應抄該執行 ee執行完畢後執行c 如此反覆,直到b為0,執行f 我想你想問的是d為0時的情況,那麼執行c,直到b為0,執行f我不已經說了麼,我想你想問的是d為0時的情況,那麼執行c,直到b為0,執行f 當d 0時 返回執行c。如果滿足b,就再執行d,不滿足就執行f c語言高...