#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
int main(int argc, char *argv[])
{
pid_t pid = -1;
int i;
for(i = 0; i < argc; i++) { /*цикл от нуля до количества параметров программы*/
pid = fork(); /* "клонируем" наш процесс в памяти*/
if(pid < 0) { /* если клонирование вернуло отрицательный результат - ошибка*/
perror("fork");
return 1;
} else if(!pid) { /* если это дочерний процесс */
if(argv[i+1]) /* проверка - имеется ли какая либо строка в этом элементе*/
execl(argv[i+1], NULL, NULL);
}
}
return 0;
}
как здесь сделать так, чтобы количество запускаемых программ определялось пользователем?
Т.е. число запускаемых программ будет содержатся в argv[1], берем его, преобразовываем в число и крутим цикл от 0 до числа в argv[1] , ну и дальше пробуем запускать остальные параметры, как программы, по порядку (argv[2], argv[3] и т.д.)
У меня никак не получается этот кусок!