В чистом ANSI C это невозможно.Здесь нет ни функций setenv
, ни putenv
, и даже отсутствует семейство функций execv*
.
Вместо этого я предлагаю вам написать небольшой интерфейс вкак вы хотите (что, возможно, выглядит как execve
) и зависит от системы.Таким образом, вы можете легко изменить оболочку при переносе программы в среду, отличную от Windows.