Typ-Definition für "type_t" in der StdBibliothek
-
Guten Tag,
Eine einfache Frage:
Warum ist es sinnvoll einen Typ zu definieren der lediglich auf einen Grundtyp verweist?Beispiel:
time.h (Standardbibliothek) nutzt "time_t", welches in der Datei types.h lediglich ein Alias für "long int" ist.Der Sinn ist mir bisher nicht ersichtlich und eine Suche hat sich als nicht zielführend erwiesen ;-).
Vielen Dank.
-
Portierbarkeit.
Möglicherweise will man die Software auf verschiedenen Plattformen kompilieren. Unter Umständen haben dort grundlegende Datentypen andere Größen. Durch diesen Umweg muss man also nichts am eigentlichen Quellcode ändern.
-
Weil time_t ein im Standard festgelegter Datentyp ist und dich die konkrete Implementierung des jeweiligen Compilerbauers nichts angeht.
Der Standard legt für dich eine Programmierschnittstelle fest, gegen die du implementierst; der Standard legt nicht fest, wie die Schnittstelle zu implementieren ist, auf anderen Plattformen/Compilern kann die konkrete Implementierung von time_t anders ausfallen und dann hättest du mit deinem Code verloren, was nicht im Sinne eines Standards ist, der Plattformunabhängigkeit gewährleistet.