亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

將&shape強制轉換為int指針類型?

int *p=(int *)&shape

&shape為shape的地址,本身不就是Int類型的嗎?

將&shape強制轉換為int指針類型?


正在回答

3 回答

指針類型和所取的地址儲存對象類型要一樣,否則指針類型太大指的范圍超過了對象的范圍,無法確定內容,若太小又取不全

0 回復 有任何疑惑可以回復我~
#1

sodo0 提問者

也就是說前后的int可以換成其他類型,比如string,double等,因為是強制轉換,前后的類型大小肯定是一致的。
2017-03-30 回復 有任何疑惑可以回復我~
#2

juhhjj 回復 sodo0 提問者

對,因為這塊&shape取地址是要取這個變量的整體的首地址,他代表的地址類型實際時其儲存的內容類型,并不是所謂的int型的,所以強制轉化
2017-04-05 回復 有任何疑惑可以回復我~

int p=(int)&shape ??

p就是儲存一個數值,由于需要用p操作shape中的數據成員,所以需要用指針

就變成

int *p=(int *)&shape

這樣p就指向shape,p++之后指向第二個數據成員

0 回復 有任何疑惑可以回復我~

不同類型的變量地址用不同的指針進行保存, 比如char類型地址使用char*,int型地址,用int*保存

0 回復 有任何疑惑可以回復我~
#1

sodo0 提問者

我叫lixinhai
2017-03-29 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之多態篇
  • 參與學習       66224    人
  • 解答問題       334    個

本教程將帶領大家體會面向對象三大特性中的多態特性

進入課程

將&shape強制轉換為int指針類型?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號