====== Visual C++ Ganzzahltypen (Integer) ====== In Visual C++ (MSVC) gibt es verschiedene Datentypen für ganze Zahlen. Sie unterscheiden sich in ihrer Speichergröße und ihrem Wertebereich. ===== Standard-Ganzzahltypen ===== ^ Datentyp ^ Speicherplatz ^ Vorzeichen ^ Wertebereich ^ | ''char'' / ''signed char'' | 1 Byte (8 Bit) | ja | -128 bis 127 | | ''unsigned char'' | 1 Byte (8 Bit) | nein | 0 bis 255 | | ''short'' / ''short int'' | 2 Bytes (16 Bit) | ja | -32.768 bis 32.767 | | ''unsigned short'' | 2 Bytes (16 Bit) | nein | 0 bis 65.535 | | ''int'' | 4 Bytes (32 Bit) | ja | -2.147.483.648 bis 2.147.483.647 | | ''unsigned int'' | 4 Bytes (32 Bit) | nein | 0 bis 4.294.967.295 | | ''long'' | 4 Bytes (32 Bit)* | ja | -2.147.483.648 bis 2.147.483.647 | | ''unsigned long'' | 4 Bytes (32 Bit)* | nein | 0 bis 4.294.967.295 | | ''long long'' | 8 Bytes (64 Bit) | ja | -9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 | | ''unsigned long long'' | 8 Bytes (64 Bit) | nein | 0 bis 18.446.744.073.709.551.615 | ===== Typen mit fester Breite () ===== Für plattformunabhängigen Code empfiehlt sich die Nutzung von '''': ^ Typ ^ Entspricht in MSVC ^ Wertebereich ^ | ''int8_t'' / ''uint8_t'' | 8-Bit Ganzzahl | -128 bis 127 / 0 bis 255 | | ''int16_t'' / ''uint16_t'' | 16-Bit Ganzzahl | -32.768 bis 32.767 / 0 bis 65.535 | | ''int32_t'' / ''uint32_t'' | 32-Bit Ganzzahl | -2.147.483.648 bis 2.147.483.647 / 0 bis 4.294.967.295 | | ''int64_t'' / ''uint64_t'' | 64-Bit Ganzzahl | ca. -9,22 × 10¹⁸ bis 9,22 × 10¹⁸ / 0 bis 1,84 × 10¹⁹ | | ''size_t'' | Größe/Index | 32-Bit (x86) oder 64-Bit (x64) | ===== Code-Beispiel: Grenzen abfragen ===== #include #include using namespace std; int main() { cout << "int Min: " << numeric_limits::min() << "\n"; cout << "int Max: " << numeric_limits::max() << "\n"; cout << "unsigned int Max: " << numeric_limits::max() << "\n"; return 0; }