不工作:char*ZZZ=系统(";/14/test";);

不工作:char*ZZZ=系统(";/14/test";);,c,C,我试图从以下方面得出结果: system("/14/test"); 输入一个名为“ZZZ”的变量,然后输入它 #include <stdio.h> #include <stdlib.h> char ZZZ[10]; int main() { char * ZZZ = system("/14/test"); printf(ZZZ); } #包括 #包括 char-ZZZ[10]; int main() { char*ZZZ=系统(“/14/测试”); pr

我试图从以下方面得出结果:

system("/14/test");
输入一个名为“ZZZ”的变量,然后输入它

#include <stdio.h>
#include <stdlib.h>

char ZZZ[10];

int main()
{

char * ZZZ = system("/14/test");

printf(ZZZ);



}
#包括
#包括
char-ZZZ[10];
int main()
{
char*ZZZ=系统(“/14/测试”);
printf(ZZZ);
}
错误:

警告:初始化将指针从整数转换为不带强制转换的整数 [-Wint转换]

system()
不会捕获它运行的命令的输出-它只返回命令的返回代码

使用
fgets()
使用并读取
文件*
。比如:

char buf[1024];
FILE *fp = popen("/14/test", "r");

while(fgets(fp, buf, sizeof buf)) {
   printf("%s\n", buf);
}
system()
不会捕获它运行的命令的输出-它只返回命令的返回代码

使用
fgets()
使用并读取
文件*
。比如:

char buf[1024];
FILE *fp = popen("/14/test", "r");

while(fgets(fp, buf, sizeof buf)) {
   printf("%s\n", buf);
}

尝试了您的示例以及链接中的示例。不工作。错误:“PATH_MAX”未在此处声明(不在函数中)char PATH[PATH_MAX];奇怪的东西。Include
#Include
获取
PATH\u MAX
。请注意,
popen
仅捕获程序的标准输出,虽然有时这是您想要的,但通常也需要标准错误流。在Linux上,可以执行
fp=popen(“/14/test2>&1”,“r”)
来路由标准错误流。尝试了您的示例以及链接中的示例。不工作。错误:“PATH_MAX”未在此处声明(不在函数中)char PATH[PATH_MAX];奇怪的东西。Include
#Include
获取
PATH\u MAX
。请注意,
popen
仅捕获程序的标准输出,虽然有时这是您想要的,但通常也需要标准错误流。在Linux上,可以执行
fp=popen(“/14/test2>&1”,“r”)
也可以路由标准错误流。