~john schrieb:
SeppJ schrieb:
Das wird dir aber trotzdem ziemlich viel weiterhelfen. Denk dir einfach das "c" vor dem Namen der Headerdateien weg und ein ".h" hinten dran. Bei den Beispielen auf der Seite ist dies ohnehin schon so und die Beispiele zu C sind auch 100% C, ohne C++.
Inbesondere cmath definiert gegenüber math.h Überladungen für Funktionen, die natürlich unter C nicht definierbar sind, und daher auch nicht vorhanden sind.
statt "long abs(long)" heißt es in C "long labs(long)" usw. Man sollte besser die C Doku nehmen, und nicht die Doku für die C++ Erweiterung der C Bibliothek. Zumal die C STD Bibliothek von C89 zu C99 erweitert wurde.
Das schöne ist ja, dass die Macher jener Referenz genau daran gedacht haben und dies ausdrücklich erwähnen.
[quote0"www.cplusplus.com"]
In C++, this function is overloaded in <cstdlib>, <complex> and <valarray> (see cstdlib abs, complex abs and valarray abs).
[...]
Portability
These overloads of abs are only available in C++.
In C, only the cstdlib version of exists (see cstdlib abs) - fabs can be used instead.[/quote]
Mit dem fehlenden C99 hast du natürlich Recht.