системный вызов дает недостаточно памяти в c ++ - PullRequest
0 голосов
/ 20 апреля 2011

Я пытался ввести список файлов в файле с помощью команды

system ("dir * .txt / b: gen> file.txt");

в программе переменного тока

это дает мне сообщение об ошибке "недостаточно памяти"

, но когда я пишу тот же код (файл dir * .txt / b: gen>.TXT) в CMD он работает нормально

, а также я попробовал некоторые другие коды, такие как "CD", они также дают ту же ошибку

ошибка отображается, если я использую Perror ("ошибка");

1 Ответ

1 голос
/ 20 апреля 2011

Нельзя полагаться на perror() для правильного отчета о состоянии процесса, запущенного с использованием system().

. Все, что perror() делает, это проверяет значение errno, но это не установленоsystem().

См. документацию о том, как на самом деле получить информацию о состоянии из system().

...