国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

淺析C/C++中被人誤解的SIZEOF

2020-01-26 15:59:47
字體:
來源:轉載
供稿:網友
1:sizeof是一個函數嗎?
2:sizeof與strlen的區別?
3:sizeof(int)(*p)的值是多少?
復制代碼 代碼如下:

int a[10];
   sizeof(a);//是多少?
   sizeof(a[10]);//是多少?
   void f(int a[10])
   {
     cout<<sizeof(a)<<endl;//值是多少?
   }
View Code

解答:
1:對于第一個問題,sizeof 不是一個函數,而是一個語言內置的關鍵字,不信你試試sizeof 4與sizeof(int),打印結果均是4,如果是函數,肯定要加上括號,即然沒加括號,那么sizeof是啥呢:),如果還不信,你可以找任何一本C++/C程序語言書查查,sizeof是32個關鍵字中的一個,如果沒有,你就換本書吧:)
即然是關鍵字為什么又要加括號呢?你可以試一下sizeof int 與sizeof(int),第一個會編譯通不過,而第二個確能編譯通過,想想C/C++語言的規定,int前只能加signed.unsigned,auto,const,volative,用來修飾變量的存儲方式,可沒有提到前面可以加sizeof呦,如果前面加sizeof表示是什么存儲方式呢:)

2:sizeof是關鍵字,strlen是一個標準C語言庫函數,用來求取字符串的長度,char *str="abacd",sizeof str與strlen(str),編譯一下,看看結果就知道了:),一個結果是4,一個結果是5,結果為4是因為一個指針占4字節,結果為5是因為串長abacd剛好5個字符,不作解釋

3:sizeof(int)(*p)的值是多少?這個其借助1,已經分析的很詳細了,其實就是取*p的值,對其轉化成int類型的數據,再測量 主站蜘蛛池模板: 措美县| 定州市| 宾阳县| 松桃| 南丹县| 辽阳市| 嘉荫县| 白山市| 武汉市| 开原市| 中西区| 巴林右旗| 高邑县| 汾阳市| 长垣县| 神木县| 岱山县| 盘山县| 香河县| 墨江| 山丹县| 长岛县| 库车县| 乐陵市| 宁德市| 京山县| 河曲县| 靖边县| 扎鲁特旗| 保亭| 永城市| 馆陶县| 阳曲县| 伊吾县| 凤山市| 营口市| 汪清县| 同德县| 开远市| 阳江市| 原平市|