Cのインタープリターのようなものがあるかどうか疑問に思っていました。つまり、Linux端末で「python」と入力して、そのインタープリターでコードを記述できます。(私は正しい言葉を解釈するかわかりません)。これは、さまざまなことをテストするのに非常に役立ちます。Cにも同様のものが存在するかどうか知りたいです。私がそれを行うことができると思うことができる唯一のことは、Cシェルでしょう...
Cのインタープリターのようなものがあるかどうか疑問に思っていました。つまり、Linux端末で「python」と入力して、そのインタープリターでコードを記述できます。(私は正しい言葉を解釈するかわかりません)。これは、さまざまなことをテストするのに非常に役立ちます。Cにも同様のものが存在するかどうか知りたいです。私がそれを行うことができると思うことができる唯一のことは、Cシェルでしょう...
回答:
多くの問題があります。質問の範囲を絞り込むと、ニーズに合わせていくつか提案できる場合があります。
注目すべきインタプリタは、ドブス博士に詳述されている「Ch:AC / C ++ Interpreter for Script Computing」です。
Chは、ISO C90標準のすべての言語機能と標準ライブラリをサポートする完全なCインタプリタですが、Cを拡張して、文字列型や計算配列などの高度な機能をファーストクラスのオブジェクトとして拡張しています。
Ch標準はフリーウェアですが、オープンソースではありません。Chのプロのみが、プロット機能やその他の必要な機能を備えています。
私はこれまでこれまで見たことがありませんが、手元にACインタープリターがあることは非常に便利で、ツールセットに追加する可能性があります。質問ありがとう!
編集:
私のお気に入りのコンパイラの1つであるTCCがCスクリプトを実行することがわかりました。
また、Cスクリプトファイルも処理します(LinuxのCソースコードファイルの最初の行にシバン行 "#!/ usr / local / bin / tcc -run"を追加して直接実行するだけです)。
'infile'の代わりに '-'を使用すると、TCCは標準入力からCソースコードを読み取ることができます。例:
echo 'main(){puts("hello");}' | tcc -run -
tcc
ではステータスで終了し10
ます。return 0
寄付を明示的に追加する必要があるようですecho 'main(){puts("hello"); return 0;}' | tcc -run -
ROOTプロジェクトは、Cintと呼ばれる非常に機能的なCおよびC ++インタープリターを提供します。私はそれがとても好きです。ただし、解釈に慣れるには少し時間がかかります。
TCCも非常に良い選択ですが、REPLを保証することはできません
恐らく。c ++にはいくつかあります。C ++インタープリター(コンパイラーではない)を使用したかを参照してください。たとえば。確かにcintはほぼすべてのcコードを食い、良い結果をもたらします。tccは非常に高速なので、インタプリタのように使用できます。
クラスでCINTを使用していることは知っています。試してみるのもいいかもしれません。
cinterp
はじめに
CompCertを使用できます。ここにいくつかの例があります:http : //compcert.inria.fr/man/manual004.html
CERNにはROOTと呼ばれるツールキットがあり、これは主に科学的分析やデータ分析などを目的としていますが、ClangベースのC / C ++インタープリターと呼ばれていCling
ます。
彼らは適応する前にCINTと呼ばれるCインタープリターを使用していましたCling
。CINTは軽量で、まだダウンロードできるようです。
ウィキペディアのリストの記事を注意深く検索することで、他の記事が見つかるかもしれません。