douxi2670 2013-11-01 20:42
浏览 46
已采纳

为stdin提供价值以供在线判断

I was making an online judge and ran into bit of a problem

What I've done till now?

So my php code takes user code and gives it to a function Compile() which compiles the code and reports back whether the compilation has been successful or not. This part of the code works pretty well.

Now the things left are running the code and evaluation

My problem

My problem is how to handle stdin inputs for user. User generally takes input from stdin using scanf, BufferedReader etc and these values are generally taken using keyboard. Now supposing that i have written those values in a file. How will i feed them these value.

My Attempts

Well I was searching for various ways and i came across this

fopen('php://stdin', 'w') 

If i believe that this works like a file than wouldn't it cause problem if multiple users use stdin at the sametime.

  • 写回答

2条回答 默认 最新

  • douwo1517 2013-11-04 17:34
    关注

    If you have the compiled code and knows the language of it, it is a little simpler.

    You can use the exec function to execute the code, and you can use as a command, something like this (for a c program, and tested):

    $output = array();
    exec("./main < sample_input.txt", $output);
    

    And if you now inspect the $output var, it has an entry in the array for each line outputted.

    Hope this helps.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 怎样才能让鼠标沿着线条的中心线轨迹移动
  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?