Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Verstehen des Sizeof-Operators | Datentypen und Variablen
C-Grundlagen

bookVerstehen des Sizeof-Operators

Die Funktion sizeof() ist ein grundlegendes Element in der C-Programmierung. Sie dient dazu, die Größe (in Bytes) des angegebenen Objekts oder Typs zu bestimmen. Zum Beispiel lässt sich so ermitteln, wie viele Bytes der Datentyp int belegt:

main.c

main.c

copy
12345678
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); return 0; }

Der Datentyp int belegt 4 Bytes.

Note
Hinweis

Beachten Sie, dass verschiedene Compiler unterschiedliche Byte-Größen für denselben Datentyp zuweisen können.

Bits

Ein Bit ist die grundlegendste Dateneinheit, die ein Computer verwendet. Jedes Byte besteht aus acht Bits.

Ingenieure haben gemeinsam entschieden, ein Byte mit 8 Bits gleichzusetzen, da diese Konfiguration Dezimalzahlen bequem darstellen kann. Wahrscheinlich ist Ihnen das Binärzahlsystem bekannt, das die Grundlage der Computeroperationen bildet.

Im Kern besteht das Ziel darin, Zahlenwerte aus unserem Alltag mithilfe von Kombinationen aus Nullen und Einsen darzustellen. Jede Zahl kann als Kombination von Zweierpotenzen dargestellt werden. Zum Beispiel kann die Zahl 7 als 111 dargestellt werden, und hier ist die Aufschlüsselung:

Die Werte 0 oder 1 besitzen an sich keine mathematische Bedeutung; sie zeigen lediglich den Zustand eines Bits an.

  • 0 – das Bit ist inaktiv;
  • 1 – das Bit ist aktiv.

Die Zahl 113 erscheint im Binärsystem als 01110001:

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); printf("Size of char type: %d bytes\n", sizeof(char)); printf("Size of double type: %d bytes\n", sizeof(double)); return 0; }

Die Funktion sizeof() kann auch auf ein Array angewendet werden, um dessen Größe zu ermitteln:

main.c

main.c

copy
12345678910
#include <stdio.h> int main() { int intArray[10]; printf("Size of int array: %d bytes\n", sizeof(intArray)); return 0; }

Ein Array mit 10 Integer-Elementen belegt 40 Byte, was bedeutet, dass jedes einzelne Element 4 Byte benötigt. Wenn die Gesamtgröße des Arrays durch die Größe eines seiner Elemente geteilt wird, ergibt sich die Anzahl der Array-Elemente:

main.c

main.c

copy
1234567891011121314151617
#include <stdio.h> int main() { int data[] = { 4, 8, 1, 5, 0, 123, 66, 11, 64, 2, 7, 78, -0, 34, 23, 545, 98, 890, 65, 32, 412, 6, 5465, 87859, 656534, 324, 324, 456, 356, 341, 5654, 534, 756, 12 }; printf("Elements in an array: %d\n", sizeof(data) / sizeof(int); ); // Alternatevly you can use `sizeof(data) / sizeof(data[0])` return 0; }
question mark

Welcher C-Ausdruck gibt die Anzahl der Elemente im Array arr zurück?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 7

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Awesome!

Completion rate improved to 2.63

bookVerstehen des Sizeof-Operators

Swipe um das Menü anzuzeigen

Die Funktion sizeof() ist ein grundlegendes Element in der C-Programmierung. Sie dient dazu, die Größe (in Bytes) des angegebenen Objekts oder Typs zu bestimmen. Zum Beispiel lässt sich so ermitteln, wie viele Bytes der Datentyp int belegt:

main.c

main.c

copy
12345678
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); return 0; }

Der Datentyp int belegt 4 Bytes.

Note
Hinweis

Beachten Sie, dass verschiedene Compiler unterschiedliche Byte-Größen für denselben Datentyp zuweisen können.

Bits

Ein Bit ist die grundlegendste Dateneinheit, die ein Computer verwendet. Jedes Byte besteht aus acht Bits.

Ingenieure haben gemeinsam entschieden, ein Byte mit 8 Bits gleichzusetzen, da diese Konfiguration Dezimalzahlen bequem darstellen kann. Wahrscheinlich ist Ihnen das Binärzahlsystem bekannt, das die Grundlage der Computeroperationen bildet.

Im Kern besteht das Ziel darin, Zahlenwerte aus unserem Alltag mithilfe von Kombinationen aus Nullen und Einsen darzustellen. Jede Zahl kann als Kombination von Zweierpotenzen dargestellt werden. Zum Beispiel kann die Zahl 7 als 111 dargestellt werden, und hier ist die Aufschlüsselung:

Die Werte 0 oder 1 besitzen an sich keine mathematische Bedeutung; sie zeigen lediglich den Zustand eines Bits an.

  • 0 – das Bit ist inaktiv;
  • 1 – das Bit ist aktiv.

Die Zahl 113 erscheint im Binärsystem als 01110001:

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); printf("Size of char type: %d bytes\n", sizeof(char)); printf("Size of double type: %d bytes\n", sizeof(double)); return 0; }

Die Funktion sizeof() kann auch auf ein Array angewendet werden, um dessen Größe zu ermitteln:

main.c

main.c

copy
12345678910
#include <stdio.h> int main() { int intArray[10]; printf("Size of int array: %d bytes\n", sizeof(intArray)); return 0; }

Ein Array mit 10 Integer-Elementen belegt 40 Byte, was bedeutet, dass jedes einzelne Element 4 Byte benötigt. Wenn die Gesamtgröße des Arrays durch die Größe eines seiner Elemente geteilt wird, ergibt sich die Anzahl der Array-Elemente:

main.c

main.c

copy
1234567891011121314151617
#include <stdio.h> int main() { int data[] = { 4, 8, 1, 5, 0, 123, 66, 11, 64, 2, 7, 78, -0, 34, 23, 545, 98, 890, 65, 32, 412, 6, 5465, 87859, 656534, 324, 324, 456, 356, 341, 5654, 534, 756, 12 }; printf("Elements in an array: %d\n", sizeof(data) / sizeof(int); ); // Alternatevly you can use `sizeof(data) / sizeof(data[0])` return 0; }
question mark

Welcher C-Ausdruck gibt die Anzahl der Elemente im Array arr zurück?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 7
some-alt