Можно ли каким-либо образом изменить на любой каталог, выполнив программу C?
Есть ли способ изменить каталог с использованием языка C?
Ответ 1
В зависимости от вашей ОС существуют разные вызовы для изменения текущего каталога. Как правило, они только изменяют текущий каталог процесса, выполняющего исполняемый файл. После завершения процесса вы попадете в каталог, в котором вы начали.
Ответ 2
Функция chdir()
. Для получения дополнительной информации используйте man chdir
.
Ответ 3
Ну, команда POSIX для изменения текущего каталога:
chdir(const char*path);
Ответ 4
chdir()
изменяет только текущий рабочий каталог процесса, но не контекст, в котором вы работаете. Предположим, что вы выполняете программу в терминале, и ваш текущий каталог /home/Documents
, а затем при выполнении программы, имеющей следующие строки
chdir("cd ../Downloads");
не изменит рабочий каталог терминала, но изменит только процесс.
Ответ 5
Да, функция chdir().
Ответ 6
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main(int argc, char* argv[])
{
system("C:\\windows\\notepad.exe");
chdir("C:\\windows\\desktop");
return 0;
}
По this