system
函数 <cstdlib>
int system (const char* command);
执行系统命令
调用命令处理程序来执行命令(command)。
如果command是空指针,则该函数仅通过该函数检查命令处理器是否可用,而不调用任何命令。
调用命令的效果取决于系统和库实现,并可能导致程序以非标准的方式运行或终止。
☲ 参数
command
包含要执行的系统命令的C-string。
或者,一个空指针,以检查命令处理程序。
☉ 返回值
如果command是空指针,在命令处理程序可用的情况下函数返回一个非零值,如果无效则返回一个零值。
如果command不是空指针,则返回值取决于系统和库实现,但如果支持的话,通常期望它是被调用命令返回的状态代码。
☣ 示例
/* system example : DIR */
#include <stdio.h> /* printf */
#include <stdlib.h> /* system, NULL, EXIT_FAILURE */
int main ()
{
int i;
printf ("Checking if processor is available...");
if (system(NULL)) puts ("Ok");
else exit (EXIT_FAILURE);
printf ("Executing command DIR...\n");
i=system ("dir");
printf ("The value returned was: %d.\n",i);
return 0;
}
|
↭ 数据竞争
函数访问命令指向的数组。
用空指针作为参数并发地调用这个函数是安全的。否则,它取决于系统和库的实现。
❆ 异常(c++)
无抛出保证:此函数从不抛出异常。
如果command不是空指针,则会导致未定义的行为。
🍄 另请参阅
exit |
终止调用进程(function ) |
getenv |
获得环境变量字符串(function ) |