0

gcc コンパイラを使用して c コードを実行しようとしています。私は1つのdynamic_code.cファイルを作成しましたが、それはこのようなものです

#include <stdio.h> 
int main()
{
char ch;
char str[100]; 
printf("Enter any character \n");
scanf("%c", &ch);
printf("Entered character is %c \n", ch);
printf("Enter any string ( upto 100 character ) \n");
scanf("%s", &str);
printf("Entered string is %s \n", str);
} 

今gccコンパイラを使用して、出力を生成するときに実行したいと思います。条件は両方とも、コンパイル時に渡される入力です。

PHPの使用

 $input = 's world';
 exec("gcc dynamic_code.c -o dynamic_code");
 $string="echo '".$input."' | ./dynamic_code";
 $output=exec($string);
 $json = json_encode($output);
 echo $json;

出力が来るのは

"Entered string is world"

どうすれば生産できますか

Enter any character
Entered character is S
Enter any string ( upto 100 character )
Entered string is world

ありがとう編集:これを参照してください...私はこのようなものが欲しい http://cfiddle.net/jlmKDA

問題はすべての出力を収集することだと思います...最後のprintf出力のみが保存されます

4

1 に答える 1