/*********************************************
* @brief 执行命令
* @param command 要执行的命令
* @return 命令的返回值
********************************************/
int system(const char* command);
!subtitle:说明
调用宿主环境的命令处理器执行命令 command,返回值由实现定义(通常为被调程序的返回值)。
命令 command 可以使用 NULL,此时检查宿主环境是否存在命令处理器,存在时返回非 0。
!subtitle:参数
command - 要执行的命令;可以为 NULL,此时检查宿主环境是否存在命令处理器
!subtitle:返回值
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