課程
/后端開發(fā)
/Java
/二進制基礎(chǔ)
強制轉(zhuǎn)換有哪些要求
2016-07-15
源自:二進制基礎(chǔ) 5-1
正在回答
強制類型轉(zhuǎn)換:當(dāng)操作數(shù)的類型不同,而且不屬于基本數(shù)據(jù)類型時,經(jīng)常需要強制類型轉(zhuǎn)換,將操作數(shù)轉(zhuǎn)化為所需要的類型。強制類型轉(zhuǎn)換具有兩種形式,稱為顯式強制轉(zhuǎn)換和隱式強制類型轉(zhuǎn)換。1、顯式強制類型轉(zhuǎn)換:顯式強制類型轉(zhuǎn)換需要使用強制類型轉(zhuǎn)換運算符,格式如下:type(<expression>)或(type)<expression> 其中,type為類型描述符,如int,float等。<expression>為表達式。經(jīng)強制類型轉(zhuǎn)換運算符運算后,返回一個具有type類型的數(shù)值,這種強制類型轉(zhuǎn)換操作并不改變操作數(shù)本身,運算后操作數(shù)本身未改變,例如:int nVar=0xab65;char cChar=char(nVar);上述強制類型轉(zhuǎn)換的結(jié)果是將整型值0xab65的高端兩個字節(jié)刪掉,將低端兩個字節(jié)的內(nèi)容作為char型數(shù)值賦值給變量cChar,而經(jīng)過類型轉(zhuǎn)換后nVar的值并未改變。2、隱式強制類型轉(zhuǎn)換:隱式類型轉(zhuǎn)換發(fā)生在賦值表達式和有返回值的函數(shù)調(diào)用表達式中。在賦值表達式中,如果賦值符左右兩側(cè)的操作數(shù)類型不同,則將賦值符右邊操作數(shù)強制轉(zhuǎn)換為賦值符左側(cè)的類型數(shù)值后,賦值給賦值符左側(cè)的變量。在函數(shù)調(diào)用時,如果return后面表達式的類型與函數(shù)返回值類型不同,則在返回值時將return后面表達式的數(shù)值強制轉(zhuǎn)換為函數(shù)返回值類型后,再將值返回,如:int nVar;double dVar=3.88;nVar=dVar;//執(zhí)行本句后,nVar的值為3,而dVar的值仍是3.88類型轉(zhuǎn)換;1.自動類型轉(zhuǎn)換2.強制類型轉(zhuǎn)換自動類型轉(zhuǎn)換分兩種情況:1,不同類型的數(shù)據(jù)進行運算時,系統(tǒng)會自動將運算優(yōu)先級別低的轉(zhuǎn)換成級別高的,結(jié)果和運算級別高的數(shù)據(jù)類型一樣。2,賦值運算符兩邊類型不一樣時,系統(tǒng)會自動將右側(cè)表達式的類型轉(zhuǎn)換成左側(cè)的變量類型,然后再賦值強制類型轉(zhuǎn)換:如:(int)3.1415 //就是取整數(shù)部分(int)a%10 //取a的十位數(shù),若a是int型,取a的平方根就是 sqrt((double)a)
慕粉3656424 提問者
舉報
二進制是計算機唯一能識別的語言,是學(xué)習(xí)計算機技術(shù)必備的知識
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-07-15
強制類型轉(zhuǎn)換:當(dāng)操作數(shù)的類型不同,而且不屬于基本數(shù)據(jù)類型時,經(jīng)常需要強制類型轉(zhuǎn)換,將操作數(shù)轉(zhuǎn)化為所需要的類型。強制類型轉(zhuǎn)換具有兩種形式,稱為顯式強制轉(zhuǎn)換和隱式強制類型轉(zhuǎn)換。
1、顯式強制類型轉(zhuǎn)換:顯式強制類型轉(zhuǎn)換需要使用強制類型轉(zhuǎn)換運算符,格式如下:type(<expression>)或(type)<expression> 其中,type為類型描述符,如int,float等。<expression>為表達式。經(jīng)強制類型轉(zhuǎn)換運算符運算后,返回一個具有type類型的數(shù)值,這種強制類型轉(zhuǎn)換操作并不改變操作數(shù)本身,運算后操作數(shù)本身未改變,例如:int nVar=0xab65;char cChar=char(nVar);上述強制類型轉(zhuǎn)換的結(jié)果是將整型值0xab65的高端兩個字節(jié)刪掉,將低端兩個字節(jié)的內(nèi)容作為char型數(shù)值賦值給變量cChar,而經(jīng)過類型轉(zhuǎn)換后nVar的值并未改變。
2、隱式強制類型轉(zhuǎn)換:隱式類型轉(zhuǎn)換發(fā)生在賦值表達式和有返回值的函數(shù)調(diào)用表達式中。在賦值表達式中,如果賦值符左右兩側(cè)的操作數(shù)類型不同,則將賦值符右邊操作數(shù)強制轉(zhuǎn)換為賦值符左側(cè)的類型數(shù)值后,賦值給賦值符左側(cè)的變量。在函數(shù)調(diào)用時,如果return后面表達式的類型與函數(shù)返回值類型不同,則在返回值時將return后面表達式的數(shù)值強制轉(zhuǎn)換為函數(shù)返回值類型后,再將值返回,如:int nVar;double dVar=3.88;nVar=dVar;//執(zhí)行本句后,nVar的值為3,而dVar的值仍是3.88
類型轉(zhuǎn)換;
1.自動類型轉(zhuǎn)換
2.強制類型轉(zhuǎn)換
自動類型轉(zhuǎn)換分兩種情況:1,不同類型的數(shù)據(jù)進行運算時,系統(tǒng)會自動將運算優(yōu)先級別低的轉(zhuǎn)換成級別高的,結(jié)果和運算級別高的數(shù)據(jù)類型一樣。2,賦值運算符兩邊類型不一樣時,系統(tǒng)會自動將右側(cè)表達式的類型轉(zhuǎn)換成左側(cè)的變量類型,然后再賦值
強制類型轉(zhuǎn)換:如:(int)3.1415 //就是取整數(shù)部分(int)a%10 //取a的十位數(shù),若a是int型,取a的平方根就是 sqrt((double)a)