位置:首頁(yè) > 軟件操作教程 > 編程開發(fā) > C語言 > 問題詳情

C語言基礎(chǔ)知識(shí)—類型的自動(dòng)轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換

提問人:ylm發(fā)布時(shí)間:2020-09-25

當(dāng)同一表達(dá)式中各數(shù)據(jù)的類型不同時(shí),編譯程序會(huì)自動(dòng)把它們轉(zhuǎn)變成同一類型后再進(jìn)行計(jì)算。轉(zhuǎn)換優(yōu)先級(jí)為:

char < int < float < double

即左邊級(jí)別“低“的類型向右邊轉(zhuǎn)換。具體地說,若在表達(dá)式中優(yōu)先級(jí)最高的數(shù)據(jù)是double型,則此表達(dá)式中的其他數(shù)據(jù)均被轉(zhuǎn)換成double型,且計(jì)算結(jié)果也是double型;若在表達(dá)式中優(yōu)先級(jí)最高的數(shù)據(jù)是float型,則此表達(dá)式中的其他數(shù)據(jù)均被轉(zhuǎn)換成float型,且計(jì)算結(jié)果也是float型。

在做賦值運(yùn)算時(shí),若賦值號(hào)左右兩邊的類型不同,則賦值號(hào)右邊的類型向左邊的類型轉(zhuǎn)換;當(dāng)右邊的類型高于左邊的類型時(shí),則在轉(zhuǎn)換時(shí)對(duì)右邊的數(shù)據(jù)進(jìn)行截取。

除自動(dòng)轉(zhuǎn)換外,還有強(qiáng)制轉(zhuǎn)換,表示形式是:

( 類型 )(表達(dá)式); 例:(int)(a+b)

討論:當(dāng)a值賦值為3.4,b值賦值為2.7,(int)(a+b)和(int)a+b的值分別為多少?

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部