數(shù)據(jù)的類(lèi)型轉(zhuǎn)換自動(dòng)類(lèi)型轉(zhuǎn)換整型浮點(diǎn)型字符型_第1頁(yè)
數(shù)據(jù)的類(lèi)型轉(zhuǎn)換自動(dòng)類(lèi)型轉(zhuǎn)換整型浮點(diǎn)型字符型_第2頁(yè)
數(shù)據(jù)的類(lèi)型轉(zhuǎn)換自動(dòng)類(lèi)型轉(zhuǎn)換整型浮點(diǎn)型字符型_第3頁(yè)
數(shù)據(jù)的類(lèi)型轉(zhuǎn)換自動(dòng)類(lèi)型轉(zhuǎn)換整型浮點(diǎn)型字符型_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

2.5數(shù)據(jù)的類(lèi)型轉(zhuǎn)換C語(yǔ)言提供了3種類(lèi)型轉(zhuǎn)換方式:自動(dòng)轉(zhuǎn)換、賦值轉(zhuǎn)換和強(qiáng)制轉(zhuǎn)換。其中自動(dòng)轉(zhuǎn)換和賦值轉(zhuǎn)換又稱(chēng)為隱式轉(zhuǎn)換,而強(qiáng)制轉(zhuǎn)換又稱(chēng)為顯示轉(zhuǎn)換。2.5.1自動(dòng)類(lèi)型轉(zhuǎn)換

整型、浮點(diǎn)型、字符型數(shù)據(jù)可以進(jìn)行混合運(yùn)算。運(yùn)算中,不同類(lèi)型的數(shù)據(jù)先轉(zhuǎn)化為同一類(lèi)型,然后進(jìn)行運(yùn)算。為了保證精度,轉(zhuǎn)換從低級(jí)到高級(jí)。各類(lèi)型從低級(jí)到高級(jí)的順序?yàn)椋篶har→int→long→float→double。

自動(dòng)轉(zhuǎn)換由編譯系統(tǒng)自動(dòng)完成。自動(dòng)轉(zhuǎn)換遵循以下規(guī)則:

(1)

若參與運(yùn)算量的類(lèi)型不同,則先轉(zhuǎn)換成同一類(lèi)型,然后進(jìn)行運(yùn)算。

(2)

轉(zhuǎn)換按數(shù)據(jù)長(zhǎng)度增加的方向進(jìn)行,以保證精度不降低。如int型和long型運(yùn)算時(shí),先把int量轉(zhuǎn)成long型后再進(jìn)行運(yùn)算。

①若兩種類(lèi)型的字節(jié)數(shù)不同,轉(zhuǎn)換成字節(jié)數(shù)高的類(lèi)型。

②若兩種類(lèi)型的字節(jié)數(shù)相同,且一種有符號(hào),一種無(wú)符號(hào),則轉(zhuǎn)換成無(wú)符號(hào)類(lèi)型。

(3)所有的浮點(diǎn)運(yùn)算都是以雙精度進(jìn)行的,即使僅含float單精度量運(yùn)算的表達(dá)式,也要先轉(zhuǎn)換成double型,再作運(yùn)算。

(4)char型和short型參與運(yùn)算時(shí),必須先轉(zhuǎn)換成int型。2.5.2賦值轉(zhuǎn)換如果賦值運(yùn)算符兩邊的數(shù)據(jù)類(lèi)型不相同,系統(tǒng)將自動(dòng)進(jìn)行類(lèi)型轉(zhuǎn)換,即把賦值號(hào)右邊的類(lèi)型轉(zhuǎn)換成左邊的類(lèi)型。具體規(guī)定如下:(1)實(shí)型賦值給整型,舍去小數(shù)部分,從而丟失一部分?jǐn)?shù)據(jù),降低精度。(2)整型賦值給實(shí)型,數(shù)值不變,但將以浮點(diǎn)形式存放,即增加小數(shù)部分(小數(shù)部分的值為0)。(3)字符型賦予整型,由于字符型為一個(gè)字節(jié),而整型為二個(gè)字節(jié),故將字符的ASCII碼值放到整型量的低八位中,高八位為0。整型賦予字符型,只把低八位賦予字符量。2.5.3強(qiáng)制類(lèi)型轉(zhuǎn)換

強(qiáng)制類(lèi)型轉(zhuǎn)換是通過(guò)類(lèi)型轉(zhuǎn)換運(yùn)算來(lái)實(shí)現(xiàn)的,其功能是把表達(dá)式的運(yùn)算結(jié)果強(qiáng)制轉(zhuǎn)換成類(lèi)型說(shuō)明符所表示的類(lèi)型。

一般形式為:(類(lèi)型說(shuō)明符)(表達(dá)式)

【例2-18】強(qiáng)制轉(zhuǎn)換示例#include<stdio.h>voidmain(){inta=7,b=2;floaty1,y2;y1=a/b;y2=(float)a/b;printf(“y1=%f,y2

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論