system.c
来自「一组基础的C库的实现」· C语言 代码 · 共 50 行
C
50 行
/* $Id: system.c 262 2006-11-16 07:34:57Z solar $ *//* Release $Name$ *//* system( const char * ) This file is part of the Public Domain C Library (PDCLib). Permission is granted to use, modify, and / or redistribute at will.*/#include <stdlib.h>/* This is an example implementation of system() fit for use with POSIX kernels.*/#include <unistd.h>#include <sys/wait.h>int system( const char * string ){ char * const argv[] = { "sh", "-c", (char * const)string, NULL }; if ( string != NULL ) { int pid = fork(); if ( pid == 0 ) { execve( "/bin/sh", argv, NULL ); } else if ( pid > 0 ) { while( wait( NULL ) != pid ); } } return -1;}#ifdef TEST#include <_PDCLIB_test.h>#define SHELLCOMMAND "echo 'SUCCESS testing system()'"int main(){ BEGIN_TESTS; TESTCASE( system( SHELLCOMMAND ) ); return TEST_RESULTS;}#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?