
1 yuzhixin411416 OP 一个新的例子: https://www.onlinegdb.com/ |
2 tool2dx 326 天前 via Android 搜 clang wasm online ,有大佬做过,能编译简单代码。 |
3 zsh2517 326 天前 @yuzhixin411416 应该是容器化或者类似的东西。实际发送到一个 Linux 机器执行(做好安全措施) neofetch 是个 shell 脚本,https://github.com/dylanaraps/neofetch/blob/master/neofetch 。贴过来运行 https://onlinegdb.com/XmASG-pIl 输出: runner30@Check -------------- OS: Ubuntu 22.04.4 LTS x86_64 Host: Google Google Compute Engine Kernel: 6.8.0-1020-gcp Uptime: 1 hour Packages: 1268 (dpkg) Shell: sh Theme: Adwaita [GTK3] Icons: Adwaita [GTK3] CPU: Intel Xeon (8) @ 2.799GHz Memory: 2658MiB / 7937MiB |
4 iYume 326 天前 直接参照 OJ 平台源码呗,更 awesome 一点,甚至可以 jupyter + c++ REPL |
5 yuzhixin411416 OP @tool2dx 这个我试了,有 std::cin 的代码不停下来等我输入 |
6 yuzhixin411416 OP @zsh2517 这种我能理解,但是动态输入输出这块搞不明白,如何能做到 执行到 std::cin 能够等待我输入 |
7 gam2046 326 天前 唔,这种方案是否可行,接受到用户输入的代码后,创建一个 websocket 到后端。 后端将代码写入文件,然后 docker run -rm -it -v user_input.c:/workspaces/user_input.c some_image bash -c "gcc user_input.c -o main && chmod +x main && ./main" 然后后端将这个 docker 进程的输入输出流直接 transfer 到 websocket ,应该能实现一个简单的在线运行效果。剩下的就是提高安全性的操作了 |
10 mahaoqu 326 天前 其实这一切都不需要服务器。你只需要用 JS 写一个 C++ 解释器,然后实现一个 TTY ,用它实现 STL 里的 iostream 就可以了。如果只是为了教学连 POSIX 都不需要实现,还是很容易的(笑) |
12 zsh2517 326 天前 |
13 shylockhg 326 天前 有服务器直接发到服务器运行,没有可以研究 wasm |
14 myderr 326 天前 不知道这个行不行,这个现在可以运行 node 环境 https://webcontainers.io/ |
15 wnpllrzodiac 326 天前 via Android vscode server |
16 flyqie 326 天前 via Android |
18 yuzhixin411416 OP 感谢各位彦祖,最终测试 pty 完美符合我的希求,就连图形输出也一并解决了 |
19 yuzhixin411416 OP 感谢提供思路,给大家一个小红包吧,支付宝口令:我爱 v2 谢谢大家 |