Avatar ·

Standardfunktion sign (signum, sgn) in C++: existiert sie und wie implementiert man sie?

Hallo Kollegen! Ich schreibe ein kleines Programm in C++ für numerische Analyse und brauche eine Funktion, die das Vorzeichen einer Zahl zurückgibt: -1 für negative, 0 für Null und 1 für positive. In der Mathematik heißt das signum oder sgn.\n\nIch habe die Dokumentation zu und durchforstet, aber nichts Ähnliches gefunden. In Python gibt es numpy.sign(), in MATLAB gibt es sign(), und in C++ – Stille. Gibt es wirklich keine solche elementare Sache in der Standardbibliothek von C++?\n\nHier ist ein Beispiel, was ich machen möchte:\n\n```cpp\n#include \n#include // vielleicht hier?\n\nint main() {\n double x = -5.7;\n // Ich möchte so etwas schreiben:\n // int s = sign(x);\n // Aber der Compiler meckert, dass sign nicht deklariert ist.\n \n // Ich muss Workarounds schreiben:\n int s;\n if (x > 0) s = 1;\n else i