array
-
Hallo,
char array[10]; int zahl=12345; itoa(zahl,array,10);Erst reserviere ich für mein array 10 Byte speicher. Führe dann itoa aus.
Jetzt ist mein array ja eigentlich nur noch 6 Byte groß da itoa eine Nullterminierung nach der Konvertierung einführt. Eigentlich sind Byte 7-10
aber doch immer noch für mich reserviert oder ?
-
Die Antwort ist ja.
Mir kommt es so vor, als würdest du nicht richtig lernen.
-
Dein Array ist nach wie vor 10 Byte groß.
-
Die Größe eines Arrays ist statisch, die kannst du zur Laufzeit nicht ändern, den Inhalt des Arrays kannst du interpretieren, z.B. als "String", in C überlicherweise kein eigener Datentyp aber als '\0' terminierte Folge von chars bekannt.
sizeof( array ) -> 10 strlen( array ) -> 5
-
