日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > C/C++編程:有關數組形參的探究

C/C++編程:有關數組形參的探究

來源:程序員人生   發布時間:2014-01-20 05:27:41 閱讀次數:3241次

今天研究了一下sizeof,之前一直以為它是函數,因為它有參數也有返回值,不過今天發現sizeof實際上是一個...恩,算是運算符吧,或者說他是一個宏,因為他是在編譯時確定值的,而表達式中的任何運算和函數調用都不會發生。不過有一個例外是C99支持的不定長數組,這時會計算不定長數組的長度。

廢話少說,先看一段代碼,今天測試sizeof的時候發現的。

#include <iostream>
#define SIZE 10

using namespace std;

int size1(int array[SIZE])
{
return sizeof(array);
}

int size2(int (&array)[SIZE])
{
return sizeof(array);
}

int main()
{
int array[SIZE];
cout << sizeof(array) << endl;
cout << size1(array) << endl;
cout << size2(array) << endl;
return 0;
}

代碼運行的結果是

40
4
40

第一個結果不解釋了,就是數組所占的內存空間。

第三個結果也不解釋了,引用就表示數組本身,也是數組所占的內存空間。

關鍵來看一下第二個結果。在C語言中,數組名是被當成指針來處理的,具體來講數組名就是指向數組首元素地址的指針,因此,當數組名被當成參數傳遞到函數中時,數組名會自動轉變成指針,所以此時sizeof的結果就是指針所占的內存大小,在32位系統下就是4

另一個概念,C語言的編譯器遇到數組元素array[i],就會替換成*(array+i)的形式。

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产a毛片 | 成人香蕉视频 | 国产伦精品一区二区三区精品视频 | 亚洲免费一区 | 人妖欧美一区二区三区 | 欧洲亚洲女同hd | 免费黄色一级片 | 日韩色区| 99精品国产99久久久久久福利 | 九九久久国产 | 国产精品一区二区精品视频免费看 | 免费观看av网站 | 国产精品一区视频 | 在线亚洲一区 | 国产一区二区三区久久 | 香蕉成人啪国产精品视频综合网 | 久久国产精品久久w女人spa | 日韩一级片网站 | 日韩视频免费看 | 91精品国产91久久久久 | 成人av免费在线观看 | 亚洲精品在线视频网站 | 日韩中文字幕在线免费观看 | 欧洲成人午夜免费大片 | 国产伦精品一区二区三区照片 | 天天操夜夜干 | 亚洲国产精品成人 | 国产19页| 99久久免费看视频 | 中文字幕在线免费观看视频 | 黄色毛片在线视频 | 91超碰在线免费观看 | 欧美午夜在线观看 | 国产精品中文字幕在线播放 | 麻豆传媒观看 | 欧美一级大片在线播放 | 99精品一区二区三区 | 久久综合五月天 | 亚洲一级免费视频 | 成人在线一区二区 | 第九色激情|