是的,有一个重复的问题,但是是5年前问的,很久没有更新了。
2020年,随着WebAssembly的发展,有没有办法在浏览器本地编译运行一个简单的C程序?
有一个叫WasmFiddle的平台,可以在浏览器中将C编译成wasm,但是缺少标准库的支持,比如stdio.h。我认为我们可以在 js 中实现标准库,也许可以将其导出到 wasm?但这需要大量的工作。
我最初的目标是构建一个基于 Web 的 IDE,供学生学习 C 编程,而无需花费大量成本在服务器上进行远程运行。因此,只需要像 stdio.h、math.h、string.h 这样的库。
更新:这似乎是 libc 到 wasm 的一个很好的实现。
不需要高性能,因此基于 wasm 的解决方案和在 JS 中实现的运行 c 的 VM 都是很好的解决方案。