Gibt es einen Interpreter für C? [closed]

Lesezeit: 4 Minuten

devins Benutzeravatar
devin

Ich habe mich gefragt, ob es so etwas wie einen Interpreter für C gibt. Das heißt, in einem Linux-Terminal kann ich “python” eingeben und dann diesen Interpreter codieren. (Ich bin mir nicht sicher, ob der Dolmetscher das richtige Wort hat). Dies ist wirklich hilfreich, um verschiedene Dinge auszuprobieren, und ich bin neugierig, ob es etwas Ähnliches für C gibt. Obwohl ich es bezweifle. Das einzige, was mir einfällt, wäre die C-Shell …

  • Das richtige Wort für das, was Sie wollen, ist “shell” oder “prompt” oder “REPL” (Read-Eval-Print-Loop, in Anlehnung an die 4 Lisp-Befehle, die verknüpft werden müssen, um einen Lisp-Interpreter in Lisp zu erstellen), aber an Dolmetscher würde funktionieren.

    – Chris Lutz

    25. Februar 2009 um 4:40 Uhr

  • Übrigens, der Begriff, nach dem Sie suchen, ist REPL (Read Evaluate Print Loop).

    – Zimon

    25. Februar 2009 um 5:05 Uhr

  • Duplikat von Gibt es eine REPL für die C-Programmierung?

    – Janus Troelsen

    31. Januar 2014 um 12:29 Uhr

  • Das bevorzugte Wort ist eigentlich “interaktive” Umgebung für C. Eine interaktive Umgebung öffnet eine für die Sprache spezifische Shell oder Eingabeaufforderung. REPL ist auch gut.

    – jchuks

    2. Januar 2017 um 18:37 Uhr

  • Eine umfassende Liste von Interpretern und Compilern für C/C++ finden Sie hier: thefreecountry.com/compilers/cpp.shtml

    – froschig

    8. Mai 2018 um 1:43 Uhr

Benutzeravatar von Adam Davis
Adam Davis

Es gibt viele – Wenn Sie den Umfang Ihrer Frage eingrenzen, können wir möglicherweise einige speziell für Ihre Bedürfnisse vorschlagen.

Ein bemerkenswerter Interpret ist “Ch: AC/C++-Interpreter für Script-Computing“ detailliert in Dr. Dobbs:

Ch ist ein vollständiger C-Interpreter, der alle Sprachfeatures und Standardbibliotheken des ISO-C90-Standards unterstützt, aber C um viele High-Level-Features wie String-Type und Computational Arrays als erstklassige Objekte erweitert.

Ch-Standard ist Freeware aber nicht opensource. Nur Ch Professional verfügt über die Plot-Fähigkeiten und andere Funktionen, die man sich wünschen könnte.

Ich habe mir das noch nie angesehen, aber einen AC-Interpreter zur Hand zu haben, klingt sehr nützlich und etwas, das ich wahrscheinlich meinem Toolset hinzufügen werde. Danke für die Frage!


Bearbeiten:

Ich habe gerade herausgefunden, dass einer meiner Lieblingscompiler, TCCführt C-Skripte aus:

Es verarbeitet auch C-Skriptdateien (fügen Sie einfach die Shebang-Zeile “#!/usr/local/bin/tcc -run” zur ersten Zeile Ihrer C-Quellcodedatei unter Linux hinzu, um sie direkt auszuführen.

TCC kann C-Quellcode von der Standardeingabe lesen, wenn ‘-‘ anstelle von ‘infile’ verwendet wird. Beispiel:

echo 'main(){puts("hello");}' | tcc -run -

  • Ich wünschte, eine Version von CH wäre unter einer vom OSI genehmigten Lizenz verfügbar, damit sie verteilt werden könnte. Sie können mit ihrem Interpreter wirklich schöne Dienstprogramme entwerfen, leider sind sie einfach zu problematisch, um sie zu bündeln.

    – Tim Post

    25. Februar 2009 um 4:56 Uhr

  • Das wäre nett. Freeware ist besser als nichts, aber bis es jemand tut…

    – Adam Davis

    25. Februar 2009 um 5:01 Uhr

  • Seltsamerweise, tcc Ausgänge mit Status 10 standardmäßig. Es sieht so aus, als müssten Sie explizit a hinzufügen return 0 geben echo 'main(){puts("hello"); return 0;}' | tcc -run -

    – Greg Nisbet

    23. Dezember 2016 um 21:27 Uhr

Picoc – Ein sehr kleiner C-Interpreter

PicoC ist ein sehr kleiner C-Interpreter für Scripting. Es wurde ursprünglich als Skriptsprache für das Flugsystem eines UAV an Bord geschrieben. Es eignet sich auch sehr gut für andere robotische, eingebettete und nicht eingebettete Anwendungen.

Das ROOT-Projekt bietet einen sehr funktionalen C- und C++-Interpreter namens Cint. Ich mag es sehr. Allerdings ist die Interpretation etwas gewöhnungsbedürftig.

TCC ist auch eine sehr gute Wahl, aber ich kann nicht für seine REPL bürgen

  • Lässt das ROOT-Team Cint nicht auslaufen?

    – Z-Boson

    27. April 2015 um 8:46 Uhr

  • @Zboson “CERN hat auf einen neuen Interpreter umgestellt, klammern Sie sich fest. CINT wird nicht mehr von CERN unterstützt.”

    – Endolith

    30. November 2017 um 15:24 Uhr

  • ROOT ersetzt cint durch cling. Haften kann also als aktualisierte Empfehlung genommen werden. (obwohl – siehe andere Antworten – cling ist C++, nicht C, falls das relevant ist, obwohl iirc cint auch etwas C++ gemacht hat)

    – pseifert

    27. März 2018 um 9:51 Uhr


dmckee --- Benutzeravatar des Ex-Moderators Kitten
dmckee — Ex-Moderator-Kätzchen

Wahrscheinlich. Es gibt mehrere für c++. Siehe Haben Sie einen der C++-Interpreter (keine Compiler) verwendet? zum Beispiel. Sicherlich zint frisst fast jeden C-Code mit guten Ergebnissen, und tcc ist so schnell, dass Sie es wie einen Dolmetscher verwenden können.

Werfen Sie einen Blick auf die Ch. Dolmetscher.

Ch ist ein integrierbarer C/C++-Interpreter für plattformübergreifendes Scripting, Shell-Programmierung, 2D/3D-Plotten, numerische Berechnungen und eingebettetes Scripting.

Benutzeravatar von Javed Ahamed
Javed Ahmed

Ich weiß, dass wir CINT im Unterricht verwenden. Es schien ziemlich gut zu sein, vielleicht möchten Sie es versuchen!

Benutzeravatar von Neel Basu
Neel Basu

Kasse iGCC

1421920cookie-checkGibt es einen Interpreter für C? [closed]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy