C++ 定数/リテラル
定数は、プログラムが変更できない固定値を参照し、リテラルと呼ばれます .
定数は、任意の基本データ型にすることができ、整数、浮動小数点数、文字、文字列、およびブール値に分けることができます。
ここでも、定数は通常の変数と同じように扱われますが、定義後に値を変更することはできません。
整数リテラル
整数リテラルは、10 進数、8 進数、または 16 進数の定数にすることができます。プレフィックスは基数または基数を指定します。16 進数の場合は 0x または 0X、8 進数の場合は 0、10 進数の場合は何もありません。
整数リテラルには、unsigned と long をそれぞれ表す U と L の組み合わせである接尾辞を付けることができます。接尾辞は大文字または小文字で、任意の順序で指定できます。
以下は整数リテラルの例です −
212 // Legal 215u // Legal 0xFeeL // Legal 078 // Illegal: 8 is not an octal digit 032UU // Illegal: cannot repeat a suffix
以下は、さまざまなタイプの整数リテラルの他の例です-
85 // decimal 0213 // octal 0x4b // hexadecimal 30 // int 30u // unsigned int 30l // long 30ul // unsigned long
浮動小数点リテラル
浮動小数点リテラルには、整数部分、小数点、小数部分、および指数部分があります。浮動小数点リテラルは、10 進数形式または指数形式で表すことができます。
小数形式を使用して表すときは、小数点、指数、またはその両方を含める必要があり、指数形式を使用して表すときは、整数部分、小数部分、またはその両方を含める必要があります。符号付き指数は、e または E によって導入されます。
浮動小数点リテラルの例をいくつか示します −
3.14159 // Legal 314159E-5L // Legal 510E // Illegal: incomplete exponent 210f // Illegal: no decimal or exponent .e55 // Illegal: missing integer or fraction
ブール値リテラル
2 つのブール値リテラルがあり、それらは標準 C++ キーワードの一部です −
- <リ>
true の値
<リ>false の値 false を表します。
true の値が 1 に等しく、 false の値が 0 に等しいと考えるべきではありません。
文字リテラル
文字リテラルは一重引用符で囲みます。リテラルが L (大文字のみ) で始まる場合、それはワイド文字リテラル (例:L'x') であり、wchar_t に格納する必要があります。 変数の型。それ以外の場合は、ナロー文字リテラル (例:'x') であり、char の単純な変数に格納できます。 タイプしてください。
文字リテラルには、通常の文字 (「x」など)、エスケープ シーケンス (「\t」など)、またはユニバーサル文字 (「\u02C0」など) を使用できます。
C++ にはバックスラッシュが先行する特定の文字があり、それらは特別な意味を持ち、改行 (\n) やタブ (\t) のように表すために使用されます。ここに、そのようなエスケープ シーケンス コードのいくつかのリストがあります −
エスケープ シーケンス | 意味 |
---|---|
\\ | \ 文字 |
\' | ' 文字 |
\" | "文字 |
\? | ?キャラクター |
\a | アラートまたはベル |
\b | バックスペース |
\f | フォーム フィード |
\n | 改行 |
\r | キャリッジ リターン |
\t | 水平タブ |
\v | 垂直タブ |
\ooo | 1 桁から 3 桁の 8 進数 |
\xhh . . . | 1桁以上の16進数 |
以下は、いくつかのエスケープ シーケンス文字を示す例です −
ライブデモ#include <iostream> using namespace std; int main() { cout << "Hello\tWorld\n\n"; return 0; }
上記のコードをコンパイルして実行すると、次の結果が生成されます −
Hello World
文字列リテラル
文字列リテラルは二重引用符で囲みます。文字列には、文字リテラルに似た文字 (プレーン文字、エスケープ シーケンス、ユニバーサル文字) が含まれています。
文字列リテラルを使用して長い行を複数の行に分割し、空白を使用してそれらを区切ることができます。
文字列リテラルの例をいくつか示します。 3 つの形式はすべて同一の文字列です。
"hello, dear" "hello, \ dear" "hello, " "d" "ear"
定数の定義
C++ で定数を定義する簡単な方法が 2 つあります −
- <リ>
#define の使用
<リ>const の使用 キーワード。
#define プリプロセッサ
以下は、 #define プリプロセッサを使用して定数を定義する形式です −
#define identifier value
次の例で詳しく説明します-
ライブデモ#include <iostream> using namespace std; #define LENGTH 10 #define WIDTH 5 #define NEWLINE '\n' int main() { int area; area = LENGTH * WIDTH; cout << area; cout << NEWLINE; return 0; }
上記のコードをコンパイルして実行すると、次の結果が生成されます −
50
const キーワード
const を使用できます 次のように特定の型の定数を宣言する接頭辞-
const type variable = value;
次の例で詳しく説明します-
ライブデモ#include <iostream> using namespace std; int main() { const int LENGTH = 10; const int WIDTH = 5; const char NEWLINE = '\n'; int area; area = LENGTH * WIDTH; cout << area; cout << NEWLINE; return 0; }
上記のコードをコンパイルして実行すると、次の結果が生成されます −
50
CAPITALS で定数を定義することは、良いプログラミング方法であることに注意してください。
C言語