111

C 用のインタープリターのようなものがあるのではないかと思っていました。つまり、Linux 端末で「python」と入力して、そのインタープリターでコーディングできます。(通訳者の正しい言葉がわかりません)。これは、さまざまなことをテストするのに非常に役立ちます.Cにも同様のものが存在するかどうか興味があります.私はそれを疑っています. 私が考えることができる唯一のことは、Cシェルです...

4

13 に答える 13

71

たくさんあります。質問の範囲を絞り込むと、お客様のニーズに固有のものを提案できる場合があります。

注目すべきインタープリターは、「Ch: AC/C++ Interpreter for Script Computing」で、Dr. Dobbs に詳述されています。

Ch は、ISO C90 標準のすべての言語機能と標準ライブラリをサポートする完全な C インタープリターですが、文字列型や計算配列などの多くの高レベル機能をファーストクラス オブジェクトとして C に拡張します。

Ch 標準はフリーウェアですが、オープン ソースではありません。プロット機能や必要なその他の機能を備えているのは Ch professional だけです。

これまで見たことはありませんでしたが、ac インタープリターを手元に置いておくと非常に便利に思えます。ツールセットに何かを追加する可能性があります。質問ありがとう!


編集:

私のお気に入りのコンパイラの 1 つであるTCCが C スクリプトを実行することがわかりました。

また、C スクリプト ファイルも処理します (Linux で直接実行するには、C ソース コード ファイルの最初の行に「#!/usr/local/bin/tcc -run」というシバン行を追加するだけです)。

「infile」の代わりに「-」を使用すると、TCC は標準入力から C ソース コードを読み取ることができます。例:

echo 'main(){puts("hello");}' | tcc -run -
于 2009-02-25T04:31:05.590 に答える
18

picoc-非常に小さなCインタプリタ

PicoCは、スクリプト用の非常に小さなCインタープリターです。もともとはUAVの機内飛行システムのスクリプト言語として書かれていました。また、他のロボット、組み込み、および非組み込みアプリケーションにも非常に適しています。

于 2012-04-06T14:53:40.870 に答える
9

ROOT プロジェクトは、 Cintと呼ばれる非常に機能的な C および C++ インタープリターを提供します。私はそれがとても好きです。ただし、解釈的に慣れるには少し時間がかかります。

TCCも非常に良い選択ですが、そのREPLを保証することはできません

于 2009-02-25T05:31:13.557 に答える
8

おそらく。C++ 用にいくつかあります。C++ インタープリター (コンパイラーではない) を使用したことがありますか? を参照してください。例えば。確かに、 cintはほぼすべての C コードを食べて良い結果が得られます。また、tccは非常に高速であるため、インタープリターのように使用できます。

于 2009-02-25T04:29:57.730 に答える
7

Ch Interpreterを見てください。

Ch は、クロスプラットフォーム スクリプティング、シェル プログラミング、2D/3D プロット、数値計算、組み込みスクリプト用の組み込み可能な C/C++ インタープリターです。

于 2009-02-25T04:32:14.603 に答える
6

クラスでCINTを使用していることは知っています。試してみたくなるかもしれませんが、かなり良さそうです。

于 2009-03-14T18:06:52.380 に答える
5

iGCCをチェックしてください

于 2011-10-12T12:09:59.813 に答える
4

cinterp開始するためのものです。

于 2009-02-25T04:29:35.703 に答える
2

cconsは、制約を満たしているようです:

ccons プロジェクトの目標は、Python と Ruby のそれぞれの「python」と「irb」に似た、C プログラミング言語用の対話型コンソールを作成することです。プロジェクトは、clang と llvm の上に構築されます。

于 2013-09-07T06:48:13.317 に答える
2

CompCert を使用できます。以下にいくつかの例を示します: http://compcert.inria.fr/man/manual004.html

于 2014-01-31T14:22:55.880 に答える
1

C の作業の大部分はコンパイルされていますが、これは完了しています。一例はCH

于 2009-02-25T04:32:00.627 に答える