Was ist das für eine Programiersprache?
- Unser Webmaster hat und eine kleine Challange zum maximalen und minimalen DSS und FSK Wert ausrechnen gegeben.
- Damit man diesen Code überhaupt Debuggen kann, wäre es von Vorteil zu wissen welche Sprache das überhaupt ist.
LG Schafi
10 Antworten
Wenn man nach Code-Stil gehen möchte, kann man folgende Auffälligkeiten entdecken:
- Der Klammerstil geht nach Stroustrup, was typisch für C/C++-Code ist.
- Unterschiedliche Stile in der Benennung (kamelHoeckerSchreibweise, snake_stil, ungarische Notation)
- Die Methoden sind nicht so eingerückt, als würden sie in einer Klasse stehen.
- Eine Methode wird in Großbuchstaben geschrieben (MINMAX), was auf ein Makro hinweisen könnte.
Das schließt Sprachen wie Java (nutzt K&R-Style) und C# (nutzt PascalCase und Allman-Style) bereits aus. Um dennoch sicherzugehen, kann man sprachliche Merkmale hinzuzählen:
- Der boolsche Datentyp wird hier mit bool benannt (in Java: boolean).
- Statische Elemente innerhalb einer Methode sind weder in Java noch in C# erlaubt. In C/C++ hingegen kennt man dies als lokale statische Variablen.
- Das Literal 1.f wäre in C# fehlerhaft.
- Der Stil ist nicht objektorientiert, Funktionen wie abs, logf oder sqrtf werden bspw. ohne Objekt aufgerufen.
Weitere eindeutige Kennzeichen sind:
- Die Makro-Konstante FLT_EPSILON
- Die Makro-Konstante RAND_MAX
Es weist also alles auf C/C++ hin. Um hier nun eine präzise Entscheidung treffen zu können, wäre zu klären, woher der Typ bool kommt oder man schaut sich die Überladungen verschiedener Funktionen an.
Bezüglich der Version kann man sagen, dass es sich wohl um mindestens C++11 oder C99-Standard handelt. Erst mit diesen Versionen wurde die Funktion sqrtf eingeführt.
eigentlich eher C wegen FLT_EPSILON das ist nicht Java like . Sondern kommt eher von
float.h
in C
von mir aus auch C++ , da kann man sich jetzt streiten ;()
Das ist C-Code.
Es ist kein Java Code, auch wenn das hier behauptet wird von einigen Antwortgebern. Der Code wäre in Java gar nicht ausführbar.
sieht nach c# oder java aus :)
Sieht stark nach C# aus