Когда я использую chdir () для изменения текущего рабочего каталога, почему getenv ("PWD") не дает текущий рабочий каталог? Нужно ли также использовать setenv ("PWD", newDir, 1)?
void intChangeDir(char *newDir)
{
if( chdir(newDir)==0 )
{
printf("Directory changed. The present working directory is \"%s\" \"%s\"\n",getenv("PWD"),getcwd(NULL,0));
}
else
{
printf("Error changing dir %s\n",strerror(errno));
}
}
Вывод: (расположение исполняемого файла - / home / user)
Изменен / boot
Каталог изменен. Текущий рабочий каталог - "/ home / user" "/ boot"