У меня есть команда, которая компилирует test.cpp и должна сохранять выходные данные в выходном файле.Вот пример моего сгенерированного cmd:
g ++ tmp / test.cpp -o tmp / test &> tmp / compile.out
, когда я использую system () , не работает.Даже если он создает выходной файл, он все равно печатает все в главном окне консоли.Когда я выполняю его в терминале, он работает просто отлично.
Я также пытался использовать popen () и fgets () (просто копируя код из здесь ) но то же самое произошло.Я, вероятно, мог бы просто раскошелиться на мой процесс и использовать freopen или что-то еще, но у меня есть сокеты и несколько потоков, работающих в фоновом режиме.Я думаю, они тоже будут дублироваться, что нехорошо.
Есть идеи, почему это может не получиться?