system

< c‎ | program
定义于头文件 <stdlib.h>
int system( const char *command );

以参数 command 调用宿主环境的命令处理器。返回实现定义值(通常是被调用程序所返回的值)。

command 是空指针,则检查宿主环境是否有命令处理器,并若且仅若命令处理器存在才返回非零。

参数

command - 标识要运行于命令处理器的命令的字符串。若给出空指针,则检查其存在性

返回值

实现定义值。若 command 为空指针,则若且唯若命令处理器存在才返回非零值。

注意

POSIX 系统上,可用 WEXITSTATUS 和 WSTOPSIG 分解返回值。

相关的 POSIX 函数 popencommand 生成的输出对调用方可用。

示例

此示例中有 unix 命令 date +%A 的系统调用:

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

可能的输出:

Wednesday

引用

  • C11 standard (ISO/IEC 9899:2011):
  • 7.22.4.8 The system function (p: 353-354)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.20.4.6 The system function (p: 317)
  • C89/C90 standard (ISO/IEC 9899:1990):
  • 4.10.4.5 The system function

参阅