передача не-char * аргументов в execvp

По сути, я хочу выполнить программу под названием «работник» с 6 аргументами, которые являются целыми …

char* args[7] = {(char*)"worker",workerID,i+1,msgID,shmID,semaphoreID,NULL};
if(execvp("worker",args)<0){
cerr << "execvp failed" << endl;
exit(1);
}

Как правильно привести их к типу char *?
Я пытался подготовиться с (char*) и использую stringstream для хранения их в массивах символов, но я все еще получаю ошибки компилятора.

1

Решение

Вам нужно конвертировать их в строки. Посмотрите на sprintf или на этот ТАК вопрос:

Где находится функция itoa в Linux?

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]