<分区>
如何在C程序中执行系统命令“echo”打印出二维数组中的所有元素?我试过了,但没用。
输入:
char myarray[1][10] = {"Hello", "World"};
system("echo $myarray");
预期输出:
Hello World
目前我没有得到任何输出。
更新 1(约束): 我无法分配更多内存——我只能使用 myarray 变量。 我可以使用任何其他标量或指针变量。
<分区>
如何在C程序中执行系统命令“echo”打印出二维数组中的所有元素?我试过了,但没用。
输入:
char myarray[1][10] = {"Hello", "World"};
system("echo $myarray");
预期输出:
Hello World
目前我没有得到任何输出。
更新 1(约束): 我无法分配更多内存——我只能使用 myarray 变量。 我可以使用任何其他标量或指针变量。
最佳答案
在调用 system
之前,您需要在单个字符串中构建整个命令。像这样的东西:
char myarray[2][10] = {"Hello", "World"};
// ^ notice
char mycommand[42];
strcpy(mycommand, "echo \"");
strcat(mycommand, myarray[0]);
strcat(mycommand, " ");
strcat(mycommand, myarray[1]);
strcat(mycommand, "\"");
system(mycommand);
关于c - 使用系统ECHO命令在C语言中打印二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39909385/