命名空间
变体
操作

system

来自 cppreference.com
< c‎ | 程序
定义在头文件 <stdlib.h>
int system( const char *command );

使用参数 command 调用主机环境的命令处理器。返回一个实现定义的值(通常是调用的程序返回的值)。

如果 command 是一个空指针,则检查主机环境是否具有命令处理器,如果命令处理器存在,则返回一个非零值。

内容

[编辑] 参数

command - 一个字符字符串,用于标识要在命令处理器中运行的命令。如果给定一个空指针,则检查命令处理器是否存在。

[编辑] 返回值

实现定义的值。如果 command 是一个空指针,则仅当命令处理器存在时,返回一个非零值。

[编辑] 注释

在 POSIX 系统上,返回值可以使用 WEXITSTATUSWSTOPSIG 进行分解。

相关的 POSIX 函数 popen 使调用者可以访问 command 生成的输出。

[编辑] 示例

在这个例子中,有一个对 unix 命令 date +%A 的系统调用,还有一个对(可能已安装)的 gcc 编译器的系统调用,带有命令行参数(--version

#include <stdlib.h>
 
int main(void) {
    system("date +%A");
    system("gcc --version");
}

可能的输出

Wednesday
gcc (GCC) 11.2.0
...

[编辑] 参考文献

  • C17 标准 (ISO/IEC 9899:2018)
  • 7.22.4.8 system 函数 (p: 257)
  • C11 标准 (ISO/IEC 9899:2011)
  • 7.22.4.8 system 函数 (p: 353-354)
  • C99 标准 (ISO/IEC 9899:1999)
  • 7.20.4.6 system 函数 (p: 317)
  • C89/C90 标准 (ISO/IEC 9899:1990)
  • 4.10.4.5 system 函数

[编辑] 另请参见

C++ 文档 for system