C ++ - Datentypen

Während Sie ein Programm in einer beliebigen Sprache schreiben, müssen Sie verschiedene Variablen verwenden, um verschiedene Informationen zu speichern. Variablen sind nichts anderes als reservierte Speicherplätze zum Speichern von Werten. Dies bedeutet, dass Sie beim Erstellen einer Variablen Speicherplatz im Speicher reservieren.

Möglicherweise möchten Sie Informationen verschiedener Datentypen wie Zeichen, Breitzeichen, Ganzzahlen, Gleitkomma, Doppel-Gleitkomma, Boolesche Werte usw. speichern. Basierend auf dem Datentyp einer Variablen weist das Betriebssystem Speicher zu und entscheidet, was in der gespeichert werden kann reservierter Speicher.

Primitive eingebaute Typen

C ++ bietet dem Programmierer eine große Auswahl an integrierten und benutzerdefinierten Datentypen. In der folgenden Tabelle sind sieben grundlegende C ++ - Datentypen aufgeführt:

Art Stichwort
Boolescher Wert Bool
Charakter verkohlen
Ganze Zahl int
Gleitkomma schweben
Doppelter Gleitkomma doppelt
Wertlos Leere
Breiter Charakter wchar_t

Mehrere der Grundtypen können mit einem oder mehreren dieser Typmodifikatoren geändert werden.

  • signed
  • unsigned
  • short
  • long

Die folgende Tabelle zeigt den Variablentyp, wie viel Speicher zum Speichern des Werts im Speicher erforderlich ist und welchen Maximal- und Minimalwert in einem solchen Variablentyp gespeichert werden kann.

Art Typische Bitbreite Typischer Bereich
verkohlen 1 Byte -127 bis 127 oder 0 bis 255
vorzeichenloser char 1 Byte 0 bis 255
signiertes Zeichen 1 Byte -127 bis 127
int 4 Bytes -2147483648 bis 2147483647
unsigned int 4 Bytes 0 bis 4294967295
signiert int 4 Bytes -2147483648 bis 2147483647
kurz int 2 Bytes -32768 bis 32767
unsigned short int 2 Bytes 0 bis 65.535
signiert kurz int 2 Bytes -32768 bis 32767
lange int 8 Bytes -2.147.483.648 bis 2.147.483.647
signiert lange int 8 Bytes das gleiche wie long int
unsigned long int 8 Bytes 0 bis 4,294,967,295
lang lang int 8 Bytes - (2 ^ 63) bis (2 ^ 63) -1
unsigned long long int 8 Bytes 0 bis 18.446.744.073.709.551.615
schweben 4 Bytes
doppelt 8 Bytes
langes Doppel 12 Bytes
wchar_t 2 oder 4 Bytes 1 breites Zeichen

Die Größe der Variablen kann je nach Compiler und verwendetem Computer von der in der obigen Tabelle angegebenen abweichen.

Das folgende Beispiel zeigt die korrekte Größe verschiedener Datentypen auf Ihrem Computer.

#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;
}

In diesem Beispiel wird verwendet endl, der nach jeder Zeile ein neues Zeilenzeichen einfügt und der Operator << verwendet wird, um mehrere Werte an den Bildschirm zu übergeben. Wir verwenden auchsizeof() Operator, um die Größe verschiedener Datentypen zu erhalten.

Wenn der obige Code kompiliert und ausgeführt wird, führt er zu folgendem Ergebnis, das von Maschine zu Maschine variieren kann:

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 Erklärungen

Sie können mit einen neuen Namen für einen vorhandenen Typ erstellen typedef. Es folgt die einfache Syntax zum Definieren eines neuen Typs mit typedef -

typedef type newname;

Im Folgenden wird dem Compiler beispielsweise mitgeteilt, dass Füße ein anderer Name für int - ist.

typedef int feet;

Die folgende Deklaration ist nun völlig legal und erstellt eine ganzzahlige Variable namens distance -.

feet distance;

Aufgezählte Typen

Ein Aufzählungstyp deklariert einen optionalen Typnamen und eine Reihe von null oder mehr Bezeichnern, die als Werte des Typs verwendet werden können. Jeder Enumerator ist eine Konstante, deren Typ die Aufzählung ist.

Das Erstellen einer Aufzählung erfordert die Verwendung des Schlüsselworts enum. Die allgemeine Form eines Aufzählungstyps ist -

enum enum-name { list of names } var-list;

Hier ist der Aufzählungsname der Typname der Aufzählung. Die Liste der Namen ist durch Kommas getrennt.

Der folgende Code definiert beispielsweise eine Aufzählung von Farben, die als Farben bezeichnet werden, und die Variable c vom Typ Farbe. Schließlich wird c der Wert "blau" zugewiesen.

enum color { red, green, blue } c;
c = blue;

Standardmäßig ist der Wert des Vornamens 0, der zweite Name hat den Wert 1 und der dritte hat den Wert 2 usw. Sie können jedoch einen Namen und einen bestimmten Wert angeben, indem Sie einen Initialisierer hinzufügen. Zum Beispiel in der folgenden Aufzählung:green wird den Wert 5 haben.

enum color { red, green = 5, blue };

Hier, blue hat den Wert 6, da jeder Name größer ist als der vorhergehende.