国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

java - c/c++ 指針指向 數(shù)組和數(shù)據(jù)類型 判斷時(shí)會(huì)不會(huì)有二義性?

瀏覽:131日期:2024-01-04 16:18:28

問題描述

int dd=1;int *a=ⅆ // 1int *c=new int[2]; //2這里1說明a是int 類型的指針,2說明c是int數(shù)組類型的指針.對(duì)不?這段數(shù)據(jù)結(jié)構(gòu)代碼

java - c/c++ 指針指向 數(shù)組和數(shù)據(jù)類型 判斷時(shí)會(huì)不會(huì)有二義性?

兩個(gè)理解:1.rowlist是個(gè)動(dòng)態(tài)數(shù)組指向一大塊內(nèi)存,數(shù)組里的元素存儲(chǔ)著指向LinkList<int>鏈表的地址。即rowlist是指針數(shù)組。如圖一

2.rowlist指向一個(gè)內(nèi)存,這個(gè)內(nèi)存存儲(chǔ)著<LinkList< int > * >類型的指針,即rowlist是指針的指針。如圖二

java - c/c++ 指針指向 數(shù)組和數(shù)據(jù)類型 判斷時(shí)會(huì)不會(huì)有二義性?

感覺兩個(gè)都可以,是要看具體實(shí)現(xiàn)嗎。比如rowlist=new ...是采用第一種?

問題解答

回答1:

int dd=1;int *a=&dd; // 1int *c=new int[2]; //2

題主說:

這里1說明a是int 類型的指針,2說明c是int數(shù)組類型的指針.對(duì)不?

并不是這樣的,a和c其實(shí)是同一個(gè)東西,他們是指向int的指針。c并不是“int數(shù)組類型的指針”。

為什么c本來是一個(gè)int指針,但實(shí)際上它卻可以指向一個(gè)int數(shù)組呢?因?yàn)閕nt數(shù)組賦值給int指針的時(shí)候,C語言偷偷把它(int數(shù)組)轉(zhuǎn)換成了該int數(shù)組的首元素,這個(gè)“偷偷轉(zhuǎn)換”的專業(yè)名詞叫“隱式轉(zhuǎn)換”。

所以總結(jié)一下:

變量c不是int數(shù)組類型的指針,而是int類型的指針;

那為什么變量c竟然可以指向int數(shù)組呢,是因?yàn)槠渲邪l(fā)生了隱式轉(zhuǎn)換;

回答2:

int *c=new int[2]; //2

c就是指向int的指針。指向數(shù)組的指針應(yīng)該寫成

int (*c)[2]=new int[2];

指針+1 會(huì)走幾個(gè)字節(jié)呢?試一試。

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 日本三级香港三级人妇99 | 91av小视频| 欧美一区二区三区久久综 | 久草在线视频资源 | 97视频在线免费播放 | 中国一级毛片欧美一级毛片 | 在线中文字幕视频 | 久久99国产亚洲精品观看 | 国产欧美一区二区三区视频 | 亚洲伊人色 | 美日韩一区二区三区 | 成人免费ā片 | 亚洲欧美一区二区三区在线观看 | 亚洲小视频网站 | 国内精品亚洲 | 纯欧美一级毛片免费 | 亚洲天堂男人的天堂 | 精品视频在线免费播放 | 欧美jizzhd欧美精品 | 成人69 | 免费人成年短视频在线观看网站 | 91手机看片国产福利精品 | 国产精品毛片一区二区三区 | 欧美成人亚洲综合精品欧美激情 | 国产一级视频播放 | 欧美午夜视频一区二区三区 | 午夜一级毛片看看 | 免费乱码中文字幕网站 | 扒开两腿猛进入爽爽视频 | 黑人边吃奶边扎下面激情视频 | 成人a级高清视频在线观看 成人a毛片 | 美日韩一区二区 | 一级毛片免费观看久 | 一级待一黄aaa大片在线还看 | 夜色毛片永久免费 | 成人毛片免费观看视频在线 | 日本精品视频在线播放 | 九九久久久久久久爱 | 天干夜天天夜天干天ww | 国产黄色片在线免费观看 | 欧美曰批人成在线观看 |