Einführung in die Datentypen in C

Jul 4, 2024

Einführung in die Datentypen in C

Basisdatentypen in C

Charakter (char)

  • Größe: 1 Byte
  • Wertebereich: -128 bis 127

Integer (int)

  • Mindestgröße: 2 Byte
  • Typische Implementierung: 4 Byte
  • Wertebereich: -32,768 bis 32,767 (bei 2 Byte)

Weitere Datentypen

Short Integer (short)

  • Größe: 2 Byte
  • Wertebereich: -32,768 bis 32,767

Long Integer (long)

  • Mindestgröße: 4 Byte
  • Typische Implementierung: gleich wie int

Long Long Integer (long long)

  • Mindestgröße: 8 Byte
  • Wertebereich: deutlich größer als long

Alternative Bezeichnungen

  • short anstelle von short int
  • long long anstelle von long long int

Größenermittlung und Wertebereich

Funktion sizeof

  • Ermittelt die Größe eines Datentyps in Byte

Vorzeichenlose Datentypen (unsigned)

  • Beschränken sich auf positive Werte
  • Erweitern den positiven Wertebereich

Modifizierer unsigned

  • Voranstellen, um Vorzeichenlosigkeit zu deklarieren

Modifizierer signed

  • Standardmäßig angenommen, betont Vorzeichen

Beispielprogramm

#include <stdio.h>
#include <limits.h> // Enthält Definitionen für Größen der Datentypen

int main() {
    // Beispiel für Speichergrößen und Wertebereiche
    printf("Größe von 'char': %lu Byte\n", sizeof(char));
    printf("Wertebereich von 'char': %d bis %d\n", CHAR_MIN, CHAR_MAX);
    // Weitere Beispiele...
    return 0;
}

Wertebereiche und Überläufe

  • Beispiel: Überlauf bei short int
  • Wichtiger Hinweis auf sorgfältige Auswahl und Anwendung von Datentypen

Vorzeichenlose Datentypen

Deklaration und Verwendung

  • unsigned short, unsigned int, unsigned long
  • Verdoppeln den positiven Bereich, da negative Zahlen wegfallen

Gleitzahlen (Floating-Point Numbers)

Float

  • Größe: 4 Byte
  • Wertebereich: ~±3.4e38
  • Genauigkeit: ~7 Dezimalstellen

Double

  • Größe: 8 Byte
  • Wertebereich: ~±1.7e308
  • Genauigkeit: ~15 Dezimalstellen

Long Double

  • Ähnlich wie double in vielen Implementierungen
  • Selten verwendet aufgrund mangelnder Unterschiede

Formatierungszeichen für printf

Ganzzahlen

  • char: %c
  • short: %hd
  • int: %d
  • long: %ld
  • long long: %lld

Vorzeichenlose Ganzzahlen

  • unsigned char: %c
  • unsigned short: %hu
  • unsigned int: %u
  • unsigned long: %lu
  • unsigned long long: %llu

Gleitzahlen

  • float: %f
  • double: %lf
  • long double: %Lf