久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3017|回復: 1
收起左側

數組名和數組名取地址&

[復制鏈接]
ID:91350 發表于 2015-10-29 22:45 | 顯示全部樓層 |閱讀模式
在C中, 在幾乎所有使用數組的表達式中,數組名的值是個指針常量,也就是數組第一個元素的地址。 它的類型取決于數組元素的類型: 如果它們是int類型,那么數組名的類型就是“指向int的常量指針“。               在以下兩種場合下,數組名并不是用指針常量來表示,就是當數組名作為sizeof操作符和單目操作符&的操作數時。 sizeof返回整個數組的長度,而不是指向數組的指針的長度。 取一個數組名的地址所產生的是一個指向數組的指針,而不是一個指向某個指針常量的指針。所以&a后返回的指針便是指向數組的指針,跟a在指針的類型上是有區別的。
               請看下面的例子:
       
   從以上輸出我們可以看出:數組名和數組名取地址在數值上是相同的,均表示數組第一個元素的地址。但是二者的顆粒度不同。                 當數組是一維數組時,數組名是以一個數組元素為顆粒度,表現為“當數組名加1時,這里的1表示一個數組元素單元”,例子中的數組元素為整數,所以數組名加1時地址加4;而數組名取地址&以整個數組為顆粒度,表現為“當數組名取地址&加1時,這里的1是表示整個數組單元”,例子中的數組為有5個元素的整型數組,所以數組名取地址&加1時,地址加20.
               當數組是二維數組時,數組名array、array[0]、&array[0][0]以及數組名取地址&在數值上是相同的,同樣各個之間的顆粒度不同。其中array[0]以及 &array[0][0] 的顆粒度相同,均是以一個數組元素為顆粒度,所以它們加1后,地址加4;而數組名和數組名取地址&顆粒度不同,前者以一行元素為顆粒度,后者以整個數組單元為顆粒度,所以前者加1,地址加3*4,后者加1,地址加6*4.

回復

使用道具 舉報

ID:94263 發表于 2015-11-1 00:18 | 顯示全部樓層
這種東西還是看靠譜的書或者標準的文檔吧。。。這種二手的資料自己理解沒問題,說的對倒也還好,萬一出了錯那真是會害人的
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品99在线 | 国产高潮av | 成人在线视频网 | 国产综合精品一区二区三区 | 国产精品久久a | 91 久久| 毛片网站在线观看 | 久久久青草婷婷精品综合日韩 | 欧美午夜精品 | 91精品国产91久久久久久最新 | 日韩久久综合 | 欧洲精品视频一区 | 九九久久精品 | 色综合久久88色综合天天 | 欧美三级视频在线观看 | 久久久精品网 | 精品亚洲一区二区 | 九九在线| 日本人做爰大片免费观看一老师 | 色综合区| 四虎最新视频 | 精品99在线 | 91资源在线观看 | 国产成人在线看 | 中文在线一区二区 | 亚洲精品黄色 | 精品美女久久久 | av手机在线播放 | 久久精品手机视频 | 不卡在线视频 | 不卡视频一区二区三区 | 久久一区二区免费视频 | 国产一区二区视频在线观看 | 国产精品伦一区二区三级视频 | 日本电影韩国电影免费观看 | 国产精品一区二区三区四区 | 成人在线一区二区 | 色www精品视频在线观看 | 免费成人国产 | 久久精品这里 | 久久99久久98精品免观看软件 |