Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Verständnis des Sizeof-Operators | Section
C-Daten und Operatoren

Verständnis 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

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

Beachte, dass verschiedene Compiler unterschiedliche Bytegröß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 beschlossen, ein Byte mit 8 Bits gleichzusetzen, da diese Konfiguration Dezimalzahlen bequem darstellen kann. Wahrscheinlich ist das binäre Zahlensystem bekannt, das die Grundlage für 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

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

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 Elements geteilt wird, ergibt sich die Anzahl der Elemente im Array:

main.c

main.c

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?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. 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

Verständnis 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

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

Beachte, dass verschiedene Compiler unterschiedliche Bytegröß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 beschlossen, ein Byte mit 8 Bits gleichzusetzen, da diese Konfiguration Dezimalzahlen bequem darstellen kann. Wahrscheinlich ist das binäre Zahlensystem bekannt, das die Grundlage für 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

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

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 Elements geteilt wird, ergibt sich die Anzahl der Elemente im Array:

main.c

main.c

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; }
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 7
some-alt