Я запускаю Windows 8, и я использую cygwin для компиляции моего кода. Я пытаюсь выполнить команды командной строки с помощью команды system(). Кажется, это должно быть просто, но удивительно, что я не мог что-то изменить. Ниже мой код:Запуск командной строки от C
#include <stdio.h>
#include <string.h>
int main()
{
char command[50];
int error = 0;
strcpy(command, "cd c:/");
error = system(command);
printf("%s\n", command);
printf("%d\n", error);
while(1)
{
;
}
return(0);
}
Однако выше программа просто возвращает переменную ошибку как «127» и переменную команду как «CD C: /». Некоторые поисковые запросы в кодах выхода показали, что это означает, что «127» означает, что команда не найдена. Я полностью потерян. Я искал какое-то время, но я могу найти только вопросы по этой проблеме, связанные с C#. Как выполнить команды командной строки из c-программы?
EDIT: Я попытался запустить программу из командной строки cygwin, и она работает нормально. Он просто работает некорректно из обычного cmd.exe и когда я дважды щелкаю по файлу .exe.
Возможный дубликат [изменение каталога изнутри программы ac под окнами с использованием системной команды] (http://stackoverflow.com/questions/10811645/changing-the-directory-from-inside-ac-program-under-windows -using-system-comman) –
Спасибо за ссылку! Однако он по-прежнему не учитывает, почему ни одна из команд не работает. –