我想知道是否有類似C的解釋器。也就是說,在Linux終端中,我可以鍵入「python」,然後在該解釋器中編碼。 (我不確定解釋正確的詞)。這對於測試不同的東西非常有幫助,我很好奇C是否存在類似的東西。儘管我懷疑它。我能想到的唯一的事情會做這將是C shell中...C有翻譯嗎?
C有翻譯嗎?
回答
There are many - 如果你縮小問題的範圍,我們也許能夠提出一些具體的您的需求。
一個值得注意的解釋是「Ch: A C/C++ Interpreter for Script Computing」詳見布斯博士:
Ch是一個完整的C解釋器 支持所有語言功能和ISO C90 標準 標準庫,但擴展了C與許多 高級功能,如字符串 類型和計算數組作爲 第一類對象。
Ch standard is freeware但不是開源的。只有Ch專業人員有繪圖功能和其他可能需要的功能。
我從來沒有在這之前看了,但手頭上一個C解釋聽起來非常有用的,這是我很可能會添加到我的工具集。謝謝你的問題!
編輯:
剛剛發現我最喜歡的編譯器,TCC,一人將執行C腳本:
它還可以處理C腳本文件(只 添加家當線 「#!/ usr/local/bin/tcc -run」到您的C源代碼文件 的第一行,並將其直接執行到Linux上
在'infile'的 處使用' - '時,TCC可以從 標準輸入中讀取C源代碼。例如:
echo 'main(){puts("hello");}' | tcc -run -
cinterp
是一個開始。
也許吧。有幾個用於C++。例子見Have you used any of the C++ interpreters (not compilers)?。當然cint幾乎可以吃任何c代碼,效果很好,tcc速度如此之快,以至於你可以像解釋器一樣使用它。
曾有人做過,即使絕大多數C工件的編譯。一個例子是CH
給看看到Ch Interpreter。
Ch是一個可嵌入的C/C++解釋爲 跨平臺的腳本,外殼 編程,2D/3D繪圖,數值 計算和嵌入的腳本。
ROOT項目提供了一個功能非常強大的C和C++解釋器,稱爲Cint。我很喜歡它。不過,這需要一點時間來解釋。
TCC是一個非常不錯的選擇爲好,但我不能夠保證其REPL
我知道我們在課堂上使用CINT。它似乎很好,你可能想試試看!
離店iGCC
picoc - 一個非常小的C解釋
PicoC對於腳本非常小C的解釋。原本是 被寫爲無人機機載飛行系統的腳本語言。 它也非常適用於其他機器人,嵌入式和非嵌入式應用。
ccons出現,以滿足您的約束:
的CCONS項目的目標是創建C編程語言中的交互式控制檯,類似「蟒蛇」和「IRB」爲Python和Ruby分別。該項目建立在clang和llvm之上。
您可以使用CompCert。下面是一些例子:http://compcert.inria.fr/man/manual004.html
最近有保鮮(基於LLVM/Clang的)
- 1. 翻譯c/C++?
- 2. 有人可以幫我翻譯這個C++代碼到C嗎?
- 3. Swift到Objective-C的翻譯可能嗎?
- 4. C++翻譯庫
- 5. Android(Eclipse)有翻譯插件嗎?
- 6. C到MIPS翻譯
- 7. google翻譯Objective-C
- 8. C#翻譯輸入
- 9. C到MIPS翻譯
- 10. 翻譯的VBScript C#
- 11. 翻譯僞成C++
- 12. 僞翻譯到C
- 13. Python翻譯爲C#
- 14. Django的翻譯,嵌段沒有翻譯
- 15. 沒有谷歌翻譯翻譯
- 16. 沒有翻譯
- 17. c - > c#翻譯,工具
- 18. 翻譯C++/CLI爲C#
- 19. 翻譯C++結構,以C#
- 20. C++翻譯成目標-C
- 21. 我翻譯得對嗎?
- 22. 需要有關翻譯成C#
- 23. 角度翻譯 - 翻譯翻譯值attr
- 24. 旋轉之前翻譯或翻譯之前旋轉嗎?它有什麼不同?
- 25. 谷歌翻譯會翻譯我的軟件嗎?
- 26. 我可以使用Google翻譯翻譯我的網站嗎?
- 27. 有翻譯屬性
- 28. 翻譯C到裝配
- 29. PigLatin翻譯器崩潰C#
- 30. 翻譯C#代碼至R
正確的話,你要的是「殼」或「提示」或「REPL」( Read-Eval-Print-Loop,參考在Lisp中必須加入Lisp解釋器的4個Lisp命令),但解釋器可以工作。 – 2009-02-25 04:40:03
另一方面,您正在尋找的術語是REPL(Read Evaluate Print Loop)。 – Travis 2009-02-25 05:05:33
[是否有C語言編程的REPL?](http://stackoverflow.com/q/10766900/309483) – 2014-01-31 12:29:55