成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

C++布爾類型和引用的用法案例-創(chuàng)新互聯(lián)

小編給大家分享一下C++ 布爾類型和引用的用法案例,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

在建安等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供成都網(wǎng)站建設、成都網(wǎng)站制作 網(wǎng)站設計制作按需網(wǎng)站設計,公司網(wǎng)站建設,企業(yè)網(wǎng)站建設,品牌網(wǎng)站設計,營銷型網(wǎng)站建設,外貿(mào)網(wǎng)站建設,建安網(wǎng)站建設費用合理。1、布爾類型

C++中的布爾類型

  • C++在C語言的基本類型系統(tǒng)之上增加了bool

  • C++中的bool可取的值只有truefalse

  • 理論上bool之占用一個字節(jié)

注意:

true代表真值,編譯器內(nèi)部用1來表示

false代表非真值, 編譯器內(nèi)部用0來表示

C語言中:

用整型值來代替bool類型,常用0:flase, 1:true

C++做了類型增強,增加了一個非常嚴謹?shù)?code>bool類型,truefalse作為關(guān)鍵字存在。

在C++的布爾類型中,bool類型只有truefalse兩個值,C++編譯器會將非0值轉(zhuǎn)換為true, 0值轉(zhuǎn)換為false

bool b = 0;
printf("b = %d\n", b);
b++;
printf("b = %d\n", b);
b = b - 3;
printf("b = %d\n", b);
// bool類型是否支持數(shù)學運算?
其實在C++語言中,布爾類型的內(nèi)部實現(xiàn)是用一個字節(jié)的整型來實現(xiàn)的,bool類型支持數(shù)學運算,編譯器會在內(nèi)部進行調(diào)整,非0為true,0 為 false

代碼試驗:

#include <stdio.h>

int main(int argc, char *argv[])
{
    bool b = false;
    int a = b;
    
    printf("sizeof(b) = %d\n", sizeof(b));
    // sizeof(b) = 1, bool類型占一個字節(jié)
    printf("b = %d, a = %d\n", b, a);    0
    // b = 0, a = 0
    
    b = 3;    // b = 1
    a = b;  // a = 1
    
    printf("b = %d, a = %d\n", b, a);
    
    b = -5;    // b = 1
    a = b;  // a = 1
    
    printf("b = %d, a = %d\n", b, a);
    
    a = 10; // a = 10
    b = a;  // b = 1
    
    printf("a = %d, b = %d\n", a, b);
    
    a = 0;    // a = 0
    b = a;  // b = 0
    
    printf("a = %d, b = %d\n", a, b);
    
    return 0;
}

布爾類型是C++中的基本數(shù)據(jù)類型

  • 可以定義bool類型的全局變量

  • 可以定義bool類型的常量

  • 可以定義bool類型的指針

  • 可以定義bool類型的數(shù)組

    ......

2、三目運算符

C++中對三目運算符進行了升級

考慮下列代碼是否正確,分別在C語言和C++環(huán)境中編譯運行試驗

int a = 1;
int b =2;
(a < b ? a : b) = 3;
printf("a = %d, b = %d\n", a, b);
// 在C語言中報錯
// 在C++中,結(jié)果a = 3

三目運算符

  • C語言中的三目運算符返回的是變量值

    • 不能作為左值使用

  • C++中的三目運算符可以直接返回變量本身

    • 既可以作為右值使用,又可以作為左值使用

注意:

三目運算符可能返回的值中如果有一個是常量值,則不能作為左值使用

三目運算符只有在所有的可能返回都是變量的時候才能作為左值使用,一個常量一個變量就不能作為左值使用

C++對三目運算符進行了這樣的升級,意義何在?

三目運算符所有的可能返回都是變量的時候,返回的就是變量本身,由此引出了新概念:引用

3、引用3.1 變量名

變量是一段實際連續(xù)存儲空間的別名,程序中通過變量來申請并命名存儲空間,通過變量的名字可以使用存儲空間。

問題:一段連續(xù)的存儲空間只能有一個別名嗎?
C++ 布爾類型和引用的用法案例

3.2 引用

C++中的引用

  • 在C++中增加了引用的概念

    int a = 4;
    int& b = a;     // b作為a的別名
    b = 5;        // 操作b就是操作a
    • 引用可以看作一個已定義變量的別名

    • 引用的語法:Type& name = var;

注意:

普通引用在定義時必須用同類型的變量進行初始化。

  • C++對三目運算符做了些啥?

    int a = 1;
    int b = 2;
    (a < b ? a : b) = 3;    // ok,返回a或b的引用,可作為左值
    (a < b ? 1 : b) = 4;    // err,返回1或b的值,不能作為左值
    • 當三目運算符的可能返回都是變量時,返回的是變量引用

    • 當三目運算符的可能返回中有常量時,返回的是

4、小結(jié)
bool類型是C++新增加的基礎(chǔ)類型

bool類型的值只能是truefalse

C++中的三目運算符可作為左值使用

C++中的引用可以看作變量的別名來使用

三目運算符的可能返回都是變量時,返回的是引用

看完了這篇文章,相信你對C++ 布爾類型和引用的用法案例有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

新聞名稱:C++布爾類型和引用的用法案例-創(chuàng)新互聯(lián)
鏈接地址:http://jinyejixie.com/article32/dhdosc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、ChatGPT微信公眾號、網(wǎng)站設計、搜索引擎優(yōu)化、用戶體驗

廣告

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

成都app開發(fā)公司
大丰市| 永城市| 乌恰县| 增城市| 沐川县| 明溪县| 浮梁县| 西峡县| 和林格尔县| 台湾省| 昂仁县| 张家界市| 张家界市| 南通市| 浑源县| 遂平县| 容城县| 弥勒县| 诸暨市| 囊谦县| 闽侯县| 左贡县| 富裕县| 沂南县| 同德县| 衡水市| 东乡县| 宣威市| 红河县| 洛南县| 宜君县| 麻阳| 蛟河市| 长兴县| 福鼎市| 治县。| 井冈山市| 茂名市| 嫩江县| 桃园县| 来宾市|