Есть ли способ изменить каталог с использованием языка C?

Можно ли каким-либо образом изменить на любой каталог, выполнив программу C?

Ответ 1

В зависимости от вашей ОС существуют разные вызовы для изменения текущего каталога. Как правило, они только изменяют текущий каталог процесса, выполняющего исполняемый файл. После завершения процесса вы попадете в каталог, в котором вы начали.

Ответ 2

Функция chdir(). Для получения дополнительной информации используйте man chdir.

Ответ 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