Christian Seiler: size_t

Beitrag lesen

Hallo,

Außerdem haben diese speziellen Typen in meinen Augen einen weiteren wichtigen Vorteil: Sie geben klar zu erkennen, was man eigentlich für eine Art Variable an der Stelle wollte. Wenn ich irgendwo eine Variable des Typs "int" sehe, dann kann das alles mögliche sein. Bei size_t weiß ich aber, dass es sich um eine Puffergröße handeln soll, etc. Damit erkenne ich leichter an Hand des Typs, welche Annahmen ein bestimmtes Stück Code macht.

Nur mal so aus Interesse: Ist size_t für Dich ebenfalls ein Kandidat, wenn nicht gerade Größenangaben in Byte sondern auch beliebigen anderen Einheiten gemacht werden? Also beispielsweise jeweils die Anzahl der Zeilen und Spalten in einer Matrix (könnte DOUBLEs enthalten, INTs oder irgendwelche andere Strukturen z. B. für komplexe Zahlen) ... In solchen Fällen wäre dann auch die Verwendung von size_t für die Indizes in diesen Strukturen konsequent und eigentlich für so ziemlich alles andere auch, was als Größe/Dimension aufgefaßt werden kann.

Grundsätzlich ja, size_t bzw. ssize_t kann auch prima für die Numerierung von Dingen verwenden, die nicht bloß 1 Byte groß sind. Es hängt aber vom konkreten Einzelfall ab. Wenn man zum Beispiel mit Sicherheit weiß, dass die Zahl garantiert nie größer als 10000 wird, kann man wohl auch int_least16_t o.ä. nehmen.

Viele Grüße,
Christian