allg.: sizeof ausdruckDieser Operator wird oft auf Strukturen angewendet. Deren Länge ergibt sich nicht zwangsläufig aus der Summe der Länge von allen Stukturelementen. Ursache sind "Füllbytes", die zur Ausrichtung der Strukturelemenete eingeschoben werden (auf Wortgrenzen der konkreten Maschine).
liefert die Anzahl der Bytes, die zum Speichern von ausdruck benötigt werden
ausdruck wird nicht ausgewertet (keine Nebeneffekte)oder: sizeof ( typ_spezifikation)
liefert die Anzahl der Bytes, die benötigt werden um ein Objekt des Typs typ_spezifikation zu speichern. sizeof gilt als Konstantenausdruck, d.h. seine Berechnung erfolgt durch den Compiler und kann zur Initialisierung benutzt werden. sizeof ist nicht auf Operanden vom Typ Funktion, void und Felder ohne Längenangabe anwendbar.
BEISPIELE/b227.c: #include <stdio.h> main() /* sizeof */ { int a[10], n, i; i = 256; n = sizeof(a); printf("Laenge von a: %d\n",n); printf("Laenge von i: %d\n",sizeof(int)); }