#C 语言标准库函数 system
/*********************************************
* @brief 执行命令
* @param command 要执行的命令
* @return 命令的返回值
********************************************/
int system(const char* command);
说明
调用宿主环境的命令处理器执行命令 command
,返回值由实现定义(通常为被调程序的返回值)。
命令 command
可以使用 NULL
,此时检查宿主环境是否存在命令处理器,存在时返回非 0。
参数
command
- 要执行的命令;可以为NULL
,此时检查宿主环境是否存在命令处理器
返回值
command
不为NULL
时,通常返回被调程序的返回值(由实现定义)command
为NULL
时,返回宿主环境是(非 0)否(0)存在命令处理器
#示例
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
if (system(NULL))
{
printf("宿主环境具有命令处理器\n");
system("echo Hello World");
system("gcc --version");
}
else
{
printf("宿主环境没有命令处理器\n");
}
return 0;
}
运行结果:
宿主环境具有命令处理器 Hello World gcc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 Copyright (C) 2023 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#外部参考
#参考标准
- C17 standard (ISO/IEC 9899:2018):
- 7.22.4.8 The system function (p: 257)
- 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