如何将用户输入从HTML表单转换为C程序


How to take user input from HTML form to C program

我有一个小程序,它从stdin获取输入sample.c

#include<stdio.h>
main()
{
int l=0;    
scanf("%d",&l);
printf("'n%d",l);
}

当然!编译它:cc-sample.c并得到a.out我正在尝试通过类似的php运行它

$runcmd = "./a.out > output.txt";
exec($runcmd,$outp); 
print_r($outp);

我的问题是,我不知道如何输入这个程序,以便scanf可以读取它?请帮帮我!

谷歌提供了一些提示,比如proc_open,popen。。。。但我没能成功。

提前感谢。

看看popenhttp://se1.php.net/popen

它的工作方式有点像fopen,当使用fwrite时,除了写入文件之外,您还可以写入prosses stdin-insted。

$runcmd = "./a.out > output.txt";
$process_stdin = popen($runcmd, 'w');
fwrite($process_stdin, "text to send to process");
pclose($process_stdin);

如果将C程序设计为服务器,则应该使用套接字或命名管道。这样,您就可以在不启动它的情况下与它进行交互。如果你想在整个脚本中多次使用popen,你可以使用它。若您只需要使用它一次,您可以将参数作为参数传递。

为什么不将它作为命令行参数传递给C程序呢。然后,您可以在argv[]中获得输入,而不是使用scanf。