解析一個有關(guān)sizeof用法的題目--sizeof(i++)
更新時間:2013年06月04日 10:39:15 作者:
本篇文章是對一個關(guān)于sizeof用法的題目進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
復(fù)制代碼 代碼如下:
#include <stdio.h>
int main()
{
int i;
i = 10;
printf("%d\n", i);
printf("%d\n", sizeof(i++));
printf("%d\n", i);
return 0;
}
這三行輸出應(yīng)該是什么?
答案是:
10
4
10
第三個為什么不是11? i為什么沒有自增?
請看C++標(biāo)準(zhǔn);
5.3.3 sizeof
The sizeof operator yields the number of bytes in the object representation of its operand. The operand is either an expression, which is an unevaluated operand (Clause 5), or a parenthesized type-id.
也就是說,如果sizeof的操作數(shù)是一個表達(dá)式的話,這個表達(dá)式時不會被計算的。
sizeof當(dāng)預(yù)處理看就行了,它后面括號里的東西,根本不求值,只根據(jù)C的一堆規(guī)則判斷結(jié)果類型,然后返回結(jié)果類型的大小
另外一個操作符typeid也是如此。
相關(guān)文章
C++中常見容器類的使用方法詳解(vector/deque/map/set)
C++中常見的容器類有vector、list、deque、map、set、unordered_map和unordered_set。下面將舉例直接說明各個容器的使用方法,希望對大家有所幫助2023-03-03
C++實現(xiàn)學(xué)生成績管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C++實現(xiàn)學(xué)生成績管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-12-12
C語言中使用qsort函數(shù)對自定義結(jié)構(gòu)體數(shù)組進(jìn)行排序
這篇文章主要介紹了C語言中使用qsort函數(shù)對自定義結(jié)構(gòu)體數(shù)組進(jìn)行排序,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-11-11

