C語(yǔ)言 強(qiáng)制類(lèi)型轉(zhuǎn)換
在C語(yǔ)言表達(dá)式中如果使用了多種數(shù)據(jù)類(lèi)型,c編譯系統(tǒng)會(huì)自動(dòng)完成類(lèi)型的轉(zhuǎn)換。這為用戶(hù)提供了方便,但也可能會(huì)存在危險(xiǎn),尤其在無(wú)意地混合使用了不同類(lèi)型數(shù)據(jù)的情況下。例如:
float a=2.7;
int b;
b=(a+2.4)%2;
這段程序由于在求余運(yùn)算符“%”左側(cè)的a+2.4是浮點(diǎn)型,所以編譯的時(shí)候會(huì)報(bào)錯(cuò)。
在編程中,應(yīng)該避免自動(dòng)類(lèi)型轉(zhuǎn)換。需要類(lèi)型轉(zhuǎn)換的,盡量使用強(qiáng)制類(lèi)型轉(zhuǎn)換來(lái)完成。強(qiáng)制類(lèi)型轉(zhuǎn)換的一般形式:
(類(lèi)型名)(表達(dá)式)
例如,上例可以改成:
float a=2.7; int b;
b-(int)(a+2.4)%2;
點(diǎn)擊加載更多評(píng)論>>