欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

C++類型轉(zhuǎn)換問題系統(tǒng)學(xué)習(xí)-創(chuàng)新互聯(lián)

寫在前面
  • 面向初學(xué)者撰寫專欄,個(gè)人原創(chuàng)的學(xué)習(xí)C/C++筆記(干貨)
  • 所作源代碼輸出內(nèi)容為中文,便于理解
  • 如有錯(cuò)誤之處請(qǐng)各位讀者指正
  • 請(qǐng)讀者評(píng)論回復(fù)、參與投票,反饋給作者,我會(huì)獲得持續(xù)更新筆記干貨的動(dòng)力。

致粉絲:可以在閱讀完我的文章后,自己嘗試寫一點(diǎn)原創(chuàng)心得(哪怕一行字也好)。
?希望眾(盡管400個(gè)🤣)粉絲多多支持、瀏覽、自我創(chuàng)作@_@

創(chuàng)新互聯(lián)建站是一家專注于做網(wǎng)站、網(wǎng)站建設(shè)與策劃設(shè)計(jì),桐鄉(xiāng)網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:桐鄉(xiāng)等地區(qū)。桐鄉(xiāng)做網(wǎng)站價(jià)格咨詢:028-86922220

知識(shí)點(diǎn)概覽?

寫在前面

知識(shí)點(diǎn)概覽?

一.為什么進(jìn)行類型轉(zhuǎn)換

1.C++數(shù)值類型豐富

2.計(jì)算機(jī)需要處理特殊類型情況

二.類型轉(zhuǎn)換的一些基本規(guī)則

1.初始化數(shù)值與賦值時(shí)進(jìn)行轉(zhuǎn)換

2.表達(dá)式內(nèi)的類型轉(zhuǎn)換

3.類型級(jí)別塔(高到低):

4.(C++11新特性)以花括號(hào){}方式初始化進(jìn)行轉(zhuǎn)換?

5.傳遞函數(shù)參數(shù)時(shí)的類型轉(zhuǎn)換

6.強(qiáng)制類型轉(zhuǎn)換

結(jié)語

一.為什么進(jìn)行類型轉(zhuǎn)換 1.C++數(shù)值類型豐富
  • C++擁有豐富的類型,在編譯程序時(shí)根據(jù)不同的類型需求選擇適當(dāng)類型
  • 不同種數(shù)值類型運(yùn)算時(shí),計(jì)算機(jī)的編譯指令與內(nèi)容會(huì)有不同
  • 在此鏈接文章:學(xué)習(xí)C++基本數(shù)值類型?
  • 例如:在 short 整型1和 short?型1相加時(shí)的編譯指令與 int 整型300和 int 型300相加可能不同
2.計(jì)算機(jī)需要處理特殊類型情況
  • 處理一組同類型的數(shù)值與另一組同類型的數(shù)值計(jì)算
  • 處理不同類型的多個(gè)數(shù)值混雜計(jì)算
  • 一種類型的值給另一種類型的值賦值
  • 處理參數(shù)(一般情況下是實(shí)參)數(shù)值傳遞給函數(shù)
  • 在此鏈接文章:?簡潔易懂地介紹C++參數(shù)
二.類型轉(zhuǎn)換的一些基本規(guī)則 1.初始化數(shù)值與賦值時(shí)進(jìn)行轉(zhuǎn)換
long l_Big = 300;
short s_small = l_Big;

如上面的例子

  1. 把long類型的變量l_Big初始化為300;
  2. 把long類型變量l_Big的值賦給較短的short類型變量s_small。
  3. 本例可能運(yùn)行時(shí)不會(huì)出大問題。但是當(dāng)l_Big數(shù)值大到超過short類型取值范圍時(shí),會(huì)出現(xiàn)未知的錯(cuò)誤(例如,數(shù)值的上溢和下溢)
  4. 把一個(gè)小類型數(shù)值賦給較大類型數(shù)值一般不會(huì)出問題,只會(huì)在內(nèi)存里占用更多的字節(jié)。
  5. 下表列出了一些類型轉(zhuǎn)換可能出現(xiàn)的問題:
類型轉(zhuǎn)換示例可能出現(xiàn)的問題
較大整型-->較小整型long轉(zhuǎn)short原較大值超過小類型取值范圍
浮點(diǎn)類型-->整型double轉(zhuǎn)int原小數(shù)部分被丟棄,也可能超過后者的取值范圍
較大浮點(diǎn)型-->較小浮點(diǎn)型double轉(zhuǎn)float精度降低(有效數(shù)位減少),或超出后者取值范圍

注意:浮點(diǎn)類型轉(zhuǎn)換為整型時(shí),直接丟棄小數(shù)部分,而不是四舍五入保留整數(shù)部分?

注意:bool類型變量,只有數(shù)值0賦給bool類型會(huì)轉(zhuǎn)換為false(假),其他任意類型非零數(shù)值都會(huì)轉(zhuǎn)換成true(真)。

2.表達(dá)式內(nèi)的類型轉(zhuǎn)換

1.整型提升:

  • 計(jì)算表達(dá)式時(shí),將如下幾種類型轉(zhuǎn)換為int類型(因?yàn)橛?jì)算機(jī)處理最快的類型是int)
    bool,char,unsigned char,signed char,short等
    計(jì)算結(jié)束轉(zhuǎn)換回去
  • 其他類型,如short和unsigned short
    • 如果short比int短,unsigned short轉(zhuǎn)為int
    • 如果short和int一樣長,unsigned short轉(zhuǎn)為unsigned int

2.兩種或多種類型混合時(shí),多采取“小類型轉(zhuǎn)換為大類型”。

3.校驗(yàn)表(C++11標(biāo)準(zhǔn)):

  • 如一個(gè)操作數(shù)類型是long double,則將另一個(gè)操作數(shù)轉(zhuǎn)換為long double
  • 否則,如一個(gè)操作數(shù)類型是double,則將另一個(gè)操作數(shù)轉(zhuǎn)換為double
  • 否則,如一個(gè)操作數(shù)類型是double,則將另一個(gè)操作數(shù)轉(zhuǎn)換為double
  • 否則,兩個(gè)操作數(shù)都不是浮點(diǎn)數(shù),都將會(huì)執(zhí)行整型提升
  • 此情況下若兩個(gè)操作數(shù)都是有或無符號(hào)的類型,低級(jí)別操作數(shù)轉(zhuǎn)高級(jí)別類型
  • 操作數(shù)中一個(gè)有符號(hào)類型,另一個(gè)無符號(hào)類型且級(jí)別較高,則有符號(hào)類型轉(zhuǎn)為該無符號(hào)類型
  • 否則,若有符號(hào)類型可以表示無符號(hào)類型所有取值,則將無符號(hào)操作數(shù)轉(zhuǎn)為有符號(hào)所屬類型
  • 否則,將兩個(gè)操作數(shù)都轉(zhuǎn)為有符號(hào)類型的無符號(hào)版本
3.類型級(jí)別塔(高到低):
有符號(hào)整型類其他類型
(注:無符號(hào)整型類同有符號(hào)整型類)(空)
long long(空)
long(空)
int(空)
short(空)
signed charchar,signed char,unsigned char同級(jí)
(空)wchar_t,char16_t,char_32_t與其底層類型相同
(空)bool最低
4.(C++11新特性)以花括號(hào){}方式初始化進(jìn)行轉(zhuǎn)換?

1.也稱作列表初始化,常用于給復(fù)雜數(shù)據(jù)類型提供值列表,要求更嚴(yán)格,不允許縮窄,可能不能用小類型表示大類型數(shù)值,且不允許將浮點(diǎn)型轉(zhuǎn)換為整型。

2.只要類型長度足夠,就可以進(jìn)行初始化類型轉(zhuǎn)換

5.傳遞函數(shù)參數(shù)時(shí)的類型轉(zhuǎn)換
  • 通常收函數(shù)原型控制,也可以取消這種控制,但不推薦
  • 傳遞時(shí)一般將float轉(zhuǎn)換為double
6.強(qiáng)制類型轉(zhuǎn)換
  • 為了便于程序員在讓數(shù)值存儲(chǔ)為一種類型時(shí),可讓它計(jì)算得到其他類型值,但不改變?cè)?/li>
  • 達(dá)到對(duì)一種值能夠滿足不同需求
  • 兩種基本強(qiáng)制類型轉(zhuǎn)換符:注意:變量名必須已聲明并賦值
(括號(hào)里放類型名)變量名或數(shù)值//方法一
變量名或數(shù)值(括號(hào)里放類型名)//方法二
static——cast<類型名>(變量或數(shù)值)

結(jié)語

?今天我們共同學(xué)習(xí)了:C++類型轉(zhuǎn)換的原因與基本規(guī)則,涉及初始化數(shù)值/表達(dá)式內(nèi)的/列表初始化的/傳遞參數(shù)時(shí)的/強(qiáng)制類型轉(zhuǎn)換,以及數(shù)值級(jí)別塔 等重要知識(shí)。
?學(xué)編程是一條漫長的路,貴在堅(jiān)持。每天學(xué)習(xí)來提升自己的的編程能力,成為耀眼的IT之星。
?各位讀者跟隨我的腳步,我們共同努力,共同進(jìn)步吧!

返回作者主頁

專欄下一篇文檔:學(xué)習(xí)C++基本數(shù)值類型?

其它文章:C++學(xué)習(xí)/溫習(xí)筆記:源碼學(xué)編程(一)(優(yōu)秀博文)

?C語言求冪運(yùn)算(盡大支持)——中文式奇特命名

?簡潔易懂地介紹C++參數(shù)

?C/C++基礎(chǔ)運(yùn)算符


如有探討問題聯(lián)系郵箱:yhlz0613@163.com

對(duì)于文章中的錯(cuò)誤請(qǐng)各位批評(píng)指正,我一定及時(shí)更正

請(qǐng)?jiān)谕镀焙笤u(píng)論回復(fù)意見,如有關(guān)于寫博文的指導(dǎo)也請(qǐng)您回復(fù)提出

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

當(dāng)前名稱:C++類型轉(zhuǎn)換問題系統(tǒng)學(xué)習(xí)-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://chinadenli.net/article16/dhjgdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、網(wǎng)站改版、面包屑導(dǎo)航、網(wǎng)站設(shè)計(jì)公司、微信公眾號(hào)小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)