这是被调用程序:
#include "stdio.h"
float main()
{
float t=100.5;
return(t);
}
用它生成一个exe文件准备被下面的程序调用;
然后是正在运行的程序:
#include "stdio.h"
#include "stdlib.h"
main()
{
float a;
a=system("H1.exe");
printf("%f\n",a);
}
为什么我得到的a不等于100.5,而是一个很小的负数,请问这个用法是否存在错误?求大家帮助,谢谢
这种返回结果不能获得的,除非使用动态连接库dll,要想通过exe获得结果,需要将第一个程序的返回结果改为输出结果:
#include "stdio.h"然后再第二个人程序中将输出重定向到一个文件,然后从文件中读入:
system("H1.exe >data.txt");
然后再从文件中读出结果(读文件代码很多,可网上找)