История изменений
Исправление LamerOk, (текущая версия) :
Как хочешь, так и заноси туда значения. argv[] же как-то формируют без функций.
argv
не является «окружением процесса».
Не знаю, как её не могло быть в POSIX.
Предлагалось жевать альтернативы в духе:
int execl(const char *, const char *, ...);
int execle(const char *, const char *, ...);
int execlp(const char *, const char *, ...);
Что совершенно точно указывает на то, что как минимум одна POSIX-совместимая система не умела забирать переменные среды из произвольного места.
Стандарт описывал в каком формате хранятся переменные и давал **environ.
Какой стандарт?
Исправление LamerOk, :
Как хочешь, так и заноси туда значения. argv[] же как-то формируют без функций.
argv
не является «окружением процесса».
Не знаю, как её не могло быть в POSIX.
Предлагалось жевать альтернативы в духе:
int execl(const char *, const char *, ...);
int execle(const char *, const char *, ...);
int execlp(const char *, const char *, ...);
Что совершенно точно указывает на то, что как минимум одна POSIX-совместимая система не умела забирать переменные среды из произвольного места.
Исходная версия LamerOk, :
Как хочешь, так и заноси туда значения. argv[] же как-то формируют без функций.
argv
не является «окружением процесса».
Не знаю, как её не могло быть в POSIX.
Предлагалось жевать альтернативы в духе:
int execl(const char *, const char *, ...);
int execle(const char *, const char *, ...);
int execlp(const char *, const char *, ...);
int execv(const char *, char *const []);
Что совершенно точно указывает на то, что как минимум одна POSIX-совместимая система не умела забирать переменные среды из произвольного места.