ホームページ  >  記事  >  バックエンド開発  >  C++ のブール型と参照の使用法の詳細な説明

C++ のブール型と参照の使用法の詳細な説明

php是最好的语言
php是最好的语言オリジナル
2018-08-06 09:17:213980ブラウズ

1. ブール型

C

  • C のブール型は、C 言語の基本的な型システムに bool# を追加します。

  • C での

    bool に指定できる値は truefalse# だけです

  • ##理論的には、
  • bool

    は 1 バイトを占めます

  • 注:

true

は真の値を表します, コンパイラは内部で 1 を使用して

false

は true 以外の値を表し、コンパイラは内部で 0 を使用して C 言語:

は整数で表されます。 Type 値は、一般的に使用される

bool

型を置き換えます。 0:flase、1:true##C は型の拡張を行い、追加しました非常に厳密な

bool
型、

truefalse がキーワードとして存在します。 C のブール型では、bool

型には

truefalse の 2 つの値しかありません。C コンパイラは、非値 0 は true、値 0 は false に変換されます。

bool b = 0;
printf("b = %d\n", b);
b++;
printf("b = %d\n", b);
b = b - 3;
printf("b = %d\n", b);
// bool类型是否支持数学运算?
実際には、C 言語では、ブール型の内部実装はバイト整数として実装されます。bool

型は数学的演算をサポートしており、コンパイラは内部で調整を行います。 -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类型占一个字节
    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

の基本データ型です。定義できます。
    bool
  • 型のグローバル変数を定義できます
  • #bool
  • 型の定数を定義できます定義される
  • bool
  • 型のポインタは、
  • bool
  • 型の配列を定義できます。

2. 三項演算子

C で三項演算子がアップグレードされました

次のコードが C 言語で正しいかどうかをそれぞれ検討してくださいC 環境でコンパイルしてテストを実行します

int a = 1;
int b =2;
(a < b ? a : b) = 3;
printf("a = %d, b = %d\n", a, b);
// 在C语言中报错
// 在C++中,结果a = 3

三項演算子

    C 言語の三項演算子は変数値を返します
    • #左辺値として使用することはできません
    #C の三項演算子は変数自体を直接返すことができます
    • ##右辺値と左辺値の両方として使用できます
    注:

三項演算子によって返される可能な値そのうちの 1 つは定数値であり、左辺値として使用することはできません。

三項演算子は、考えられるすべての戻り値が変数である場合にのみ左辺値として使用できます。定数と変数は左辺値として使用できません

C を使用する三項演算子へのこのようなアップグレードにはどのような意味がありますか?

三項演算子のすべての可能な戻り値が変数である場合、

は変数自体を返します

。これは新しい概念につながります: Quote3, Quote

3.1 変数名

変数とは、実際の連続した記憶領域の別名であり、プログラム中では変数を介して記憶領域の適用と名前付けが行われ、変数名を介して記憶領域を利用することができます。

質問: 連続ストレージ スペースにはエイリアスを 1 つだけ持つことができますか?


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 
  • 三項演算子の可能な戻り値がすべて変数の場合、返されるのは
      変数参照
    • ##三項演算子の戻り値に定数がある場合、
    4 が返されます。
    bool

    型は、新しく追加された C の基本型です。

    ##bool
    型の値は、true と # のみです##false

    C の三項演算子は左辺値として使用できますC の参照は変数のエイリアスとして使用できます三項演算子がすべて変数の場合、参照が返される

    関連記事:

    php boolean(Boolean)型の使用例

    PHP Boolean Type データ型 false true 使用法の概要

    以上がC++ のブール型と参照の使用法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。