【发布时间】:2016-01-09 12:19:11
【问题描述】:
每次我使用 system() 函数在 c 中编写最简单的程序时,它都会返回 -1。 例如:
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("%d", system("pause"));
return 0;
}
我使用了多个编译器来确保它不能仅与 gcc 一起使用。 每个 cmd 命令都会发生这种情况。 当我在 cmd 中键入命令时,它们工作正常。 该程序只是跳过每个 system() 函数调用。 附言我正在使用 Windows 8.1 和 GNU 编译器(gcc)。
有人知道我应该怎么做吗?
【问题讨论】:
-
你怎么知道它返回
-1?另外,"pause"不是标准的命令行命令,它是特定于 MS-DOS 的。 -
我打印 system() 函数返回的值。
-
您在发布的代码中没有这样做,还要指定发生这种情况的环境,例如操作系统。
-
你是在 bash shell 中执行它吗?
-
@iharob 我在命令提示符下运行编译好的exe文件。
标签: c