Если вы не хотите видеть вывод при запуске программы, вы можете перенаправить его вывод следующим образом:
./program > /dev/null
/dev/null
- это специальное устройство, которое съедает все, что вы его кормите (например,черная дыра).>
перенаправляет вывод (из stdout
) в файл.Перенаправление вывода на /dev/null
означает, что все записано в /dev/null
, и это ничего не делает с ним, поэтому вы фактически выбрасываете свой вывод.
Если вы хотите сделать это в самой программе,Вы можете позвонить freopen
и снова открыть stdout
до /dev/null
, получив тот же эффект.Например:
freopen("/dev/null", "w", stdout);
Sidenote : для перенаправления stderr
вместо >
вы можете использовать 2>
и freopen
, конечно же, вы снова откроете stderr
,Перенаправлять stderr
на /dev/null
не очень хорошая идея, хотя может быть полезно перенаправить его в файл.
Если вы хотите перенаправить и stdout
, и stderr
, вы можетеперенаправить stderr
на stdout
и stdout
на /dev/null
следующим образом:
./program > /dev/null 2>&1
(обратите внимание на порядок перенаправления)