execlp.c

来自「linux下用PCMCIA无线网卡虚拟无线AP的程序源码」· C语言 代码 · 共 52 行

C
52
字号
#include <stdlib.h>#include <unistd.h>#include <stdarg.h>extern int execvep(const char *path, char *__const argv[], char *__const envp[]);int execlp(__const char *file, __const char *arg, ...){	const char *shortargv[16];	const char **argv;	const char *c;	int i;	va_list args;	i = 1;	va_start(args, arg);	do {		c = va_arg(args, const char *);		i++;	} while (c);	va_end(args);	if (i <= 16)		argv = shortargv;	else {		argv = (const char **) alloca(sizeof(char *) * i);	}	argv[0] = arg;	i = 1;	va_start(args, arg);	do {		argv[i] = va_arg(args, const char *);	} while (argv[i++]);	va_end(args);	i = execvep(file, (char *const *) argv, __environ);	if (argv != shortargv)		free(argv);	return i;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?