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

您的位置:首頁技術文章
文章詳情頁

java - c/c++ 指針指向 數組和數據類型 判斷時會不會有二義性?

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

問題描述

int dd=1;int *a=ⅆ // 1int *c=new int[2]; //2這里1說明a是int 類型的指針,2說明c是int數組類型的指針.對不?這段數據結構代碼

java - c/c++ 指針指向 數組和數據類型 判斷時會不會有二義性?

兩個理解:1.rowlist是個動態數組指向一大塊內存,數組里的元素存儲著指向LinkList<int>鏈表的地址。即rowlist是指針數組。如圖一

2.rowlist指向一個內存,這個內存存儲著<LinkList< int > * >類型的指針,即rowlist是指針的指針。如圖二

java - c/c++ 指針指向 數組和數據類型 判斷時會不會有二義性?

感覺兩個都可以,是要看具體實現嗎。比如rowlist=new ...是采用第一種?

問題解答

回答1:

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

題主說:

這里1說明a是int 類型的指針,2說明c是int數組類型的指針.對不?

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

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

所以總結一下:

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

那為什么變量c竟然可以指向int數組呢,是因為其中發生了隱式轉換;

回答2:

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

c就是指向int的指針。指向數組的指針應該寫成

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

指針+1 會走幾個字節呢?試一試。

標簽: java
相關文章:
主站蜘蛛池模板: 久久99久久精品国产只有 | 高清欧美性xxxx成熟 | 国产成人精品视频一区二区不卡 | 免费a级黄毛片 | 成人久久在线 | a级高清 | 久久精品成人免费网站 | 欧美最猛性xxxxx亚洲精品 | 黄色美女视频 | 国产日韩精品一区二区在线观看 | 99久久精品免费看国产一区二区 | 综合久色 | 免费人成在线观看网站视频 | 欧美视频一区 | 久久国产毛片 | 亚洲在线观看 | 久久九九精品视频 | 亚洲精品手机在线观看 | 亚洲精彩 | 男人的天堂久久精品激情 | 亚洲国产成人久久笫一页 | 亚洲精品影院一区二区 | 久久国产精品免费网站 | 狠狠色丁香婷婷久久综合不卡 | 亚洲天堂网站在线 | 久色网址 | 亚洲 欧美 日韩在线 | 国产欧美在线一区二区三区 | 国产精品欧美一区二区在线看 | 中文字幕一区二区在线观看 | 成人欧美一区二区三区黑人 | 成人欧美午夜视频毛片 | 99亚洲精品 | 杨幂精品国产专区91在线 | 在线免费国产 | 亚洲国产精品免费观看 | 一级毛片不卡片免费观看 | 国产欧美视频综合二区 | 欧美精品成人3d在线 | 久久成年人视频 | 免费国产a国产片高清不卡 免费国产不卡午夜福在线 免费国产不卡午夜福在线观看 |