サーチ…


int

"実行環境のアーキテクチャーによって提案された自然なサイズ"の符号付き整数型で、その範囲には少なくとも-32767〜+32767が含まれていることを示します。

int x = 2;
int y = 3;
int z = x + y;

他の整数型を生成するために、 unsignedshortlong 、およびlong long (qv)と組み合わせることができます。

ブール

値がtrueまたはfalseいずれかの整数型。

bool is_even(int x) {
    return x%2 == 0;
}
const bool b = is_even(47); // false

チャー

「実装の基本文字セットの任意のメンバーを格納するのに十分な大きさ」の整数型。 charが署名されているか(少なくとも-127から+127までの範囲を持つ)か、符号なしか(少なくとも0から255までの範囲を持つ)かどうかは、実装によって定義されます。

const char zero = '0';
const char one = zero + 1;
const char newline = '\n';
std::cout << one << newline; // prints 1 followed by a newline

char16_t

C ++ 11

uint_least16_tと同じサイズとアラインメントを持つ符号なし整数型。したがって、UTF-16コード単位を保持するのに十分な大きさです。

const char16_t message[] = u"你好,世界\n";            // Chinese for "hello, world\n"
std::cout << sizeof(message)/sizeof(char16_t) << "\n"; // prints 7

char32_t

C ++ 11

uint_least32_tと同じサイズと位置合わせを持つ符号なし整数型。したがって、UTF-32コード単位を保持するのに十分な大きさです。

const char32_t full_house[] = U"🂣🂳🂨🂸🃈";               // non-BMP characters
std::cout << sizeof(full_house)/sizeof(char32_t) << "\n"; // prints 6

浮く

浮動小数点型。 C ++の3つの浮動小数点型の中で最も狭い範囲を持っています。

float area(float radius) {
    const float pi = 3.14159f;
    return pi*radius*radius;
}

ダブル

浮動小数点型。その範囲にはfloat範囲が含まれます。組み合わせた場合にlong表し、 long doubleその範囲のもの含む浮動小数点型、 double

double area(double radius) {
    const double pi = 3.141592653589793;
    return pi*radius*radius;
}

長いです

少なくともintと同じ長さで、範囲に-2147483647〜+2147483647(つまり、 - (2 ^ 31-1)〜+(2 ^ 31-1))を含む符号付き整数型を示します。この型はlong intと書くこともできます。

const long approx_seconds_per_year = 60L*60L*24L*365L;

long doubleの組み合わせは、3つの浮動小数点型の中で最も広い範囲を持つ浮動小数点型を表します。

long double area(long double radius) {
    const long double pi = 3.1415926535897932385L;
    return pi*radius*radius;
}
C ++ 11

ときにlong指定子は、二回起こるとlong long 、それは、少なくとも限りである符号付き整数型示しlong 、そしてその範囲は9223372036854775807少なくとも-9223372036854775807を含む、(すなわち、包括- (2 ^ 63 - 1)〜+(2 ^ 63 - 1))。

// support files up to 2 TiB
const long long max_file_size = 2LL << 40;

ショート

charと少なくとも同じ長さで、範囲に少なくとも-32767〜+32767を含む符号付き整数型を示します。この型はshort intと書くこともできます。

// (during the last year)
short hours_worked(short days_worked) {
    return 8*days_worked;
}

無効

不完全な型。オブジェクトの型が有することが可能ではないvoid 、またの配列があるvoidにするか、参照をvoid 。何も返さない関数の戻り型として使用されます。

さらに、 void型の単一のパラメータで関数を重複して宣言することもできvoid 。これはパラメータを持たない関数を宣言することと同じです(例えば、 int main()int main(void)は同じ関数を宣言します)。この構文は、Cとの互換性のために使用できます(関数宣言はC ++とは異なる意味を持ちます)。

void* ( " voidへのポインタ")は、オブジェクトポインタをそのポインタに変換して戻すことができ、同じポインタを返すというプロパティを持っています。この機能は、例えば、CスタイルのAPI( qsortpthread_create )の一般的なコンテキストの場合など、ある種の(型が安全でない)型消去インタフェースに適した型void*作成します。

任意の式をvoid型の式に変換することができvoid 。これは破棄された値式と呼ばれます

static_cast<void>(std::printf("Hello, %s!\n", name));  // discard return value

これは、式の値が重要ではなく、その副作用のみが評価されることを明示的に伝えるのに便利です。

wchar_t

サポートされている最大の拡張文字セット(ワイド文字セットとも呼ばれます)のすべての文字を表すのに十分な大きさの整数型です。 ( wchar_tがUTF-16などの特定のエンコーディングを使用すると仮定すると、移植性がありません)。

これは通常、キャラクタ・タイプcharより大きなサイズを持つため、ASCII 255以上のキャラクタを格納する必要がある場合に使用されます。

const wchar_t message_ahmaric[] = L"ሰላም ልዑል\n"; //Ahmaric for "hello, world\n"
const wchar_t message_chinese[] = L"你好,世界\n";// Chinese for "hello, world\n"
const wchar_t message_hebrew[]  = L"שלום עולם\n"; //Hebrew for "hello, world\n"
const wchar_t message_russian[] = L"Привет мир\n";  //Russian for "hello, world\n"
const wchar_t message_tamil[]   = L"ஹலோ உலகம்\n"; //Tamil for "hello, world\n"


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow