解析一個(gè)有關(guān)sizeof用法的題目--sizeof(i++)
更新時(shí)間:2013年06月04日 10:39:15 作者:
本篇文章是對(duì)一個(gè)關(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
第三個(gè)為什么不是11? i為什么沒(méi)有自增?
請(qǐng)看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.
也就是說(shuō),如果sizeof的操作數(shù)是一個(gè)表達(dá)式的話,這個(gè)表達(dá)式時(shí)不會(huì)被計(jì)算的。
sizeof當(dāng)預(yù)處理看就行了,它后面括號(hào)里的東西,根本不求值,只根據(jù)C的一堆規(guī)則判斷結(jié)果類型,然后返回結(jié)果類型的大小
另外一個(gè)操作符typeid也是如此。
您可能感興趣的文章:
- C/C++ 中sizeof(''a'')對(duì)比詳細(xì)介紹
- 淺析C/C++中被人誤解的SIZEOF
- C語(yǔ)言中sizeof函數(shù)的基本使用總結(jié)
- C語(yǔ)言位運(yùn)算和sizeof運(yùn)算符詳解
- C++無(wú)法重載點(diǎn)符號(hào)、::、sizeof等的原因
- 詳解C++編程中的sizeof運(yùn)算符與typeid運(yùn)算符
- C語(yǔ)言中sizeof()與strlen()函數(shù)的使用入門(mén)及對(duì)比
- C語(yǔ)言中關(guān)于sizeof 和 strlen的區(qū)別分析
- C#中sizeof的用法實(shí)例分析
- 淺析C語(yǔ)言中的sizeof
- C/C++中的sizeof運(yùn)算符和size_t類型的詳解
相關(guān)文章
C語(yǔ)言通過(guò)深度優(yōu)先搜索來(lái)解電梯問(wèn)題和N皇后問(wèn)題的示例
深度優(yōu)先搜索即是對(duì)一個(gè)新發(fā)現(xiàn)的節(jié)點(diǎn)上如果還關(guān)聯(lián)未探測(cè)到的邊,就沿此邊探測(cè)下去,直到發(fā)現(xiàn)從原點(diǎn)可達(dá)的所有點(diǎn)為止,這里我們就來(lái)展示C語(yǔ)言通過(guò)深度優(yōu)先搜索來(lái)解電梯問(wèn)題和N皇后問(wèn)題的示例2016-06-06
Qt中正則表達(dá)式的常見(jiàn)用法(QRegularExpression類)
正則表達(dá)式即一個(gè)文本匹配字符串的一種模式,Qt中使用QRegExp類進(jìn)行模式匹配,下面這篇文章主要給大家介紹了關(guān)于Qt中正則表達(dá)式的常見(jiàn)用法,文中介紹的是QRegularExpression類的相關(guān)資料,需要的朋友可以參考下2024-05-05
關(guān)于C++虛函數(shù)與靜態(tài)、動(dòng)態(tài)綁定的問(wèn)題
這篇文章主要介紹了C++虛函數(shù)與靜態(tài)、動(dòng)態(tài)綁定,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-10-10
VSCode下.json文件的編寫(xiě)之(1) linux/g++ (2).json中參數(shù)與預(yù)定義變量的意義解釋
這篇文章主要介紹了VSCode下.json文件的編寫(xiě)之(1) linux/g++ (2).json中參數(shù)與預(yù)定義變量的意義解釋,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-03-03
c++ 入門(mén)——淺析構(gòu)造函數(shù)和析構(gòu)函數(shù)
這篇文章主要介紹了c++ 淺析構(gòu)造函數(shù)和析構(gòu)函數(shù)的相關(guān)資料,幫助大家入門(mén)c++ 編程,感興趣的朋友可以了解下2020-08-08
C++設(shè)置超時(shí)時(shí)間的簡(jiǎn)單實(shí)現(xiàn)方法
這篇文章主要介紹了C++設(shè)置超時(shí)時(shí)間的簡(jiǎn)單實(shí)現(xiàn)方法,涉及系統(tǒng)函數(shù)setsockopt對(duì)套接口的操作,具有一定的實(shí)用價(jià)值,需要的朋友可以參考下2014-10-10

