国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C語言編程—強(qiáng)制類型轉(zhuǎn)換

這篇具有很好參考價(jià)值的文章主要介紹了C語言編程—強(qiáng)制類型轉(zhuǎn)換。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

強(qiáng)制類型轉(zhuǎn)換是把變量從一種類型轉(zhuǎn)換為另一種數(shù)據(jù)類型。例如,如果您想存儲(chǔ)一個(gè) long 類型的值到一個(gè)簡(jiǎn)單的整型中,您需要把 long 類型強(qiáng)制轉(zhuǎn)換為 int 類型。您可以使用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符來把值顯式地從一種類型轉(zhuǎn)換為另一種類型,如下所示:

(type_name) expression

請(qǐng)看下面的實(shí)例,使用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符把一個(gè)整數(shù)變量除以另一個(gè)整數(shù)變量,得到一個(gè)浮點(diǎn)數(shù):


#include <stdio.h>
 
int main()
{
   int sum = 17, count = 5;
   double mean;
 
   mean = (double) sum / count;
   printf("Value of mean : %f\n", mean );
 
}

當(dāng)上面的代碼被編譯和執(zhí)行時(shí),它會(huì)產(chǎn)生下列結(jié)果:

Value of mean : 3.400000

這里要注意的是強(qiáng)制類型轉(zhuǎn)換運(yùn)算符的優(yōu)先級(jí)大于除法,因此 sum 的值首先被轉(zhuǎn)換為 double 型,然后除以 count,得到一個(gè)類型為 double 的值。

類型轉(zhuǎn)換可以是隱式的,由編譯器自動(dòng)執(zhí)行,也可以是顯式的,通過使用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符來指定。在編程時(shí),有需要類型轉(zhuǎn)換的時(shí)候都用上強(qiáng)制類型轉(zhuǎn)換運(yùn)算符,是一種良好的編程習(xí)慣。

整數(shù)提升

整數(shù)提升是指把小于 intunsigned int 的整數(shù)類型轉(zhuǎn)換為 intunsigned int 的過程。請(qǐng)看下面的實(shí)例,在 int 中添加一個(gè)字符:


#include <stdio.h>
 
int main()
{
   int  i = 17;
   char c = 'c'; /* ascii 值是 99 */
   int sum;
 
   sum = i + c;
   printf("Value of sum : %d\n", sum );
 
}

當(dāng)上面的代碼被編譯和執(zhí)行時(shí),它會(huì)產(chǎn)生下列結(jié)果:

Value of sum : 116

在這里,sum 的值為 116,因?yàn)榫幾g器進(jìn)行了整數(shù)提升,在執(zhí)行實(shí)際加法運(yùn)算時(shí),把 'c' 的值轉(zhuǎn)換為對(duì)應(yīng)的 ascii 值。

常用的算術(shù)轉(zhuǎn)換

常用的算術(shù)轉(zhuǎn)換是隱式地把值強(qiáng)制轉(zhuǎn)換為相同的類型。編譯器首先執(zhí)行整數(shù)提升,如果操作數(shù)類型不同,則它們會(huì)被轉(zhuǎn)換為下列層次中出現(xiàn)的最高層次的類型:

C語言編程—強(qiáng)制類型轉(zhuǎn)換

常用的算術(shù)轉(zhuǎn)換不適用于賦值運(yùn)算符、邏輯運(yùn)算符 && 和 ||。讓我們看看下面的實(shí)例來理解這個(gè)概念:


#include <stdio.h>
 
int main()
{
   int  i = 17;
   char c = 'c'; /* ascii 值是 99 */
   float sum;
 
   sum = i + c;
   printf("Value of sum : %f\n", sum );
 
}

當(dāng)上面的代碼被編譯和執(zhí)行時(shí),它會(huì)產(chǎn)生下列結(jié)果:

Value of sum : 116.000000

在這里,c 首先被轉(zhuǎn)換為整數(shù),但是由于最后的值是 float 型的,所以會(huì)應(yīng)用常用的算術(shù)轉(zhuǎn)換,編譯器會(huì)把 i 和 c 轉(zhuǎn)換為浮點(diǎn)型,并把它們相加得到一個(gè)浮點(diǎn)數(shù)。

如果一個(gè)運(yùn)算符兩邊的運(yùn)算數(shù)類型不同,先要將其轉(zhuǎn)換為相同的類型,即較低類型轉(zhuǎn)換為較高類型,然后再參加運(yùn)算,轉(zhuǎn)換規(guī)則如下圖所示。

C語言編程—強(qiáng)制類型轉(zhuǎn)換文章來源地址http://www.zghlxwxcb.cn/news/detail-512707.html

到了這里,關(guān)于C語言編程—強(qiáng)制類型轉(zhuǎn)換的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包