Suche…


int

Bezeichnet einen vorzeichenbehafteten Integer-Typ mit "der von der Architektur der Ausführungsumgebung vorgeschlagenen natürlichen Größe", dessen Bereich mindestens -32767 bis +32767 (einschließlich) umfasst.

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

Kann mit unsigned , short , long und long long (qv) kombiniert werden, um andere Integer-Typen zu erhalten.

bool

Ein ganzzahliger Typ, dessen Wert entweder true oder false .

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

verkohlen

Ein ganzzahliger Typ, der "groß genug ist, um ein Mitglied des Basiszeichensatzes der Implementierung zu speichern". Es ist implementierungsdefiniert, ob char signiert ist (und einen Bereich von mindestens -127 bis +127 (einschließlich) hat) oder unsigniert (und einen Bereich von mindestens 0 bis einschließlich 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

Ein vorzeichenloser Integer-Typ mit derselben Größe und Ausrichtung wie uint_least16_t , der daher groß genug ist, um eine UTF-16- uint_least16_t .

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

Ein vorzeichenloser Integer-Typ mit derselben Größe und Ausrichtung wie uint_least32_t , der daher groß genug ist, um eine UTF-32- uint_least32_t .

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

schweben

Ein Gleitkommatyp. Hat den engsten Bereich der drei Fließkommatypen in C ++.

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

doppelt

Ein Gleitkommatyp. Sein Sortiment umfasst das von float . Wenn mit long kombiniert, wird der Typ des long double Gleitpunkts bezeichnet, dessen Bereich den Wert von double .

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

lange

Bezeichnet einen vorzeichenbehafteten ganzzahligen Typ, der mindestens so lang wie int ist und dessen Bereich mindestens -2147483647 bis +2147483647 umfasst (d. H. - (2 ^ 31-1) bis + (2 ^ 31-1)). Dieser Typ kann auch als long int .

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

Die Kombination long double bezeichnet einen Fließkomma-Typ, der den breitesten Bereich der drei Fließkomma-Typen aufweist.

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

Wenn der long Spezifizierer zweimal auftritt, wie in long long , bezeichnet er einen Integer - Typ unterzeichnet, die mindestens so lang wie long , und deren Bereich mindestens -9223372036854775807 bis 9223372036854775807, inclusive (das heißt, - (2 ^ 63 - 1) bis + (2 ^ 63 - 1)).

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

kurz

Bezeichnet einen vorzeichenbehafteten Integer-Typ, der mindestens so lang wie char ist und dessen Bereich mindestens -32767 bis +32767 (einschließlich) umfasst. Dieser Typ kann auch als short int .

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

Leere

Ein unvollständiger Typ; Es ist nicht möglich, dass ein Objekt vom Typ void , und es gibt keine Arrays von void oder Verweise auf void . Es wird als Rückgabetyp von Funktionen verwendet, die nichts zurückgeben.

Darüber hinaus kann eine Funktion redundant mit einem einzigen Parameter vom Typ void deklariert void . Dies ist gleichbedeutend mit der Deklaration einer Funktion ohne Parameter (zB int main() und int main(void) erklären dieselbe Funktion). Diese Syntax ist für die Kompatibilität mit C zulässig (wobei Funktionsdeklarationen eine andere Bedeutung haben als in C ++).

Der Typ void* ("Zeiger auf void ") hat die Eigenschaft, dass jeder Objektzeiger in ihn und zurück konvertiert werden kann und zum selben Zeiger führt. Diese Funktion macht den Typ void* für bestimmte Arten von (Typ-unsicheren) Schnittstellen zum Löschen von Typen geeignet, beispielsweise für generische Kontexte in APIs im C-Stil (z. B. qsort , pthread_create ).

Jeder Ausdruck kann in einen Ausdruck vom Typ void . Dies wird als Ausdruck für einen verworfenen Wert bezeichnet :

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

Dies kann nützlich sein, um explizit zu signalisieren, dass der Wert eines Ausdrucks nicht von Interesse ist und dass der Ausdruck nur hinsichtlich seiner Nebenwirkungen bewertet werden soll.

wchar_t

Ein ganzzahliger Typ, der groß genug ist, um alle Zeichen des größten unterstützten erweiterten Zeichensatzes darzustellen, der auch als Breitzeichensatz bezeichnet wird. (Die Annahme, dass wchar_t eine bestimmte Kodierung wie UTF-16 verwendet, ist nicht tragbar.)

Sie wird normalerweise verwendet, wenn Sie Zeichen über ASCII 255 speichern müssen, da sie größer als der Zeichentyp char .

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
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow