system
来自cppreference.com
在标头 <stdlib.h> 定义
|
||
int system( const char *command ); |
||
以参数 command
调用宿主环境的命令处理器。返回实现定义值(通常是被调用程序所返回的值)。
若 command
是空指针,则检查宿主环境是否有命令处理器,并若且仅若命令处理器存在才返回非零。
参数
command | - | 标识要运行于命令处理器的命令的字符串。若给出空指针,则检查其存在性 |
返回值
实现定义值。若 command
为空指针,则当且仅当命令处理器存在才返回非零值。
注意
POSIX 系统上,可用 WEXITSTATUS
和 WSTOPSIG
分解返回值。
相关的 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 The system function (第 257 页)
- C11 标准(ISO/IEC 9899:2011):
- 7.22.4.8 The system function (第 353-354 页)
- C99 标准(ISO/IEC 9899:1999):
- 7.20.4.6 The system function (第 317 页)
- C89/C90 标准(ISO/IEC 9899:1990):
- 4.10.4.5 The system function