C ++データ・タイプ
プログラミングのためのプログラミング言語を使用する場合、必要が様々な情報を格納する変数の多様性を使用します。 変数は、その格納された値がメモリ位置で保持されます。 これは、変数を作成するとき、それはメモリ内のいくつかのスペースを保持することを意味します。
あなたは、オペレーティングシステムは、変数のデータ型に基づいてされます、(などの文字、ワイド文字、整数、浮動小数点、倍精度浮動小数点、ブール値、など)のデータ型のさまざまな情報を保存したい、とメモリを割り当てることを決定することができます予約メモリにどのような格納されています。
基本的な組み込み型
C ++プログラマは、組み込みデータ型とユーザ定義のデータ型を数多く提供しています。 次の表は、7つの基本的なC ++のデータ型を示します。
类型 | 关键字 |
---|---|
布尔型 | bool |
字符型 | char |
整型 | int |
浮点型 | float |
双浮点型 | double |
无类型 | void |
宽字符型 | wchar_t |
いくつかの基本的な種類が変更された改質剤の1種類以上を使用することができます。
- 署名されました
- 符号なしの
- ショート
- 長いです
メモリに格納された値を占有する必要性を保存することができる場合は、次の表は、変数の様々なタイプの最大値と最小値メモリ、及びこの型の変数を示しています。
タイプ | 場所 | スコープ |
---|---|---|
チャー | 1バイト | 127 -128または0-255 |
unsigned char型 | 1バイト | 0-255 |
符号付き文字型 | 1バイト | 127 -128 |
int型 | 4バイト | 2147483647へ-2147483648 |
unsigned int型 | 4バイト | 0-4294967295 |
署名されたint型 | 4バイト | 2147483647へ-2147483648 |
short int型 | 2バイト | -32768〜32767 |
符号なしshort int型 | 範囲 | 0〜65535 |
short int型に署名しました | 範囲 | -32768〜32767 |
long int型 | 4バイト | 2147483647へ-2147483647 |
long int型に署名しました | 4バイト | 同じlong int型 |
符号なしlong int型 | 4バイト | 0〜4294967295 |
フロート | 4バイト | +/- 3.4E +/- 38(〜7桁) |
ダブル | 8バイト | +/- 1.7E +/- 308(〜15桁) |
ダブルロング | 8バイト | +/- 1.7E +/- 308(〜15桁) |
wchar_t型 | 2または4バイト | ワイド文字 |
テーブルから学習することができ、変数のサイズは、コンパイラと使用しているコンピュータによって異なります。
次の例では、コンピュータ上の出力のさまざまなデータ型のサイズになります。
#include <iostream> using namespace std; int main() { cout << "Size of char : " << sizeof(char) << endl; cout << "Size of int : " << sizeof(int) << endl; cout << "Size of short int : " << sizeof(short int) << endl; cout << "Size of long int : " << sizeof(long int) << endl; cout << "Size of float : " << sizeof(float) << endl; cout << "Size of double : " << sizeof(double) << endl; cout << "Size of wchar_t : " << sizeof(wchar_t) << endl; return 0; }
この例では、各行の後に改行を挿入しますてendlを、使用して、<<演算子は、画面に複数の値を渡すために使用されます。 また、さまざまなデータ型のサイズを取得するためにはsizeof()関数を使用します。
上記のコードをコンパイルして実行されると、それは次のような結果を生成し、その結果は、使用しているコンピュータによって異なります。
Size of char : 1 Size of int : 4 Size of short int : 2 Size of long int : 4 Size of float : 4 Size of double : 8 Size of wchar_t : 4
typedefステートメント
あなたは既に新しい名前を取っ型にtypedefを使用することができます。 ここでは、構文の新しい型を定義するtypedefは次のとおりです。
typedef type newname;
たとえば、次の文は、足がintのために別の名前で、コンパイラを教えてくれます。
typedef int feet;
さて、次の文は、それが整数変数の距離は完全に合法作成されます。
feet distance;
列挙型
列挙型(列挙型)は、ユーザによって定義されたいくつかの列挙定数の集まりである派生データ型でC ++です。
変数は、わずか数の可能な値である場合列挙(列挙)型として定義することができます。 いわゆる「列挙」は変数リストにそれらうちの値を参照の範囲内では、変数の値のみを列挙することができます。
列挙を作成し、キーワード列挙型を使用します。 列挙型の一般的な形式は以下のとおりです。
enum enum-name { list of names } var-list;
ここでは、列挙名は列挙型の名前です。 [名前]ボックスの一覧{名のリストが}カンマで区切られています。
たとえば、次のコードでは、型のカラーの色列挙変数cを定義します。 最後に、Cは「青」の値が割り当てられます。
enum color { red, green, blue } c; c = blue;
値が1である、第三の名前の値が0であるデフォルトでは、第二の名前は姓ように2であり、です。 しかし、あなたはまた、単に初期値を追加し、特別な値に与えられた名前を付けることができます。 たとえば、次の列挙で、5の緑の値。
enum color { red, green=5, blue };
デフォルトでは、それぞれの名前が、それはビッグネーム1の前にある以上になりますので、ここでは、青は、6です。