我使用的glibc版本沒有execvpe
函數。但是,我需要確切的功能來實現我正在嘗試的功能。用戶將傳入一個參數列表,這是他們的linux命令供我運行(使用它的參數列表)。這裏是什麼樣子:我怎樣才能像execvpe一樣使用exea和va_list?
foo.c的
int main(int argc, char *argv[], char *envp[])
{
char * newenvp[] = ...;
execvpe(argv[1], &argv[1], newenvp);
}
使用示例
foo echo -e "Hello World.\n"
有一種解決方法,以取代execvpe
與execle
?
這是不可能的,因爲在編譯時確定的變量參數的數量,但可以在運行時確定一個空終止數組的大小。 – 2013-04-22 15:37:52