Почему параметр argv для execvp не является константой?

execvp определяется следующим образом:

int execvp(const char *file, char *const argv[]);

Что исключает использование подобного кода:

const char* argv[] = {"/bin/my", "command", "here", NULL};
execvp(argv[0], argv);

Было ли это случайным упущением? Безопасно ли использовать const _вокруг этого? Или некоторые реализации execvp действительно пишут в этой памяти?

26
задан Jonathan Mayer 4 May 2012 в 20:57
поделиться