Как перенаправить вывод system() в файл?

В этой программе C

#include 
#include 
int main()
{
    int file = open("Result", O_CREAT|O_WRONLY, S_IRWXU);

    dup2(stdout, file);
    system("ls -l");

    return 0;
}

я пытаюсь перенаправить вывод system()в файл, для этого я использовал dup2, но он не работает.

Что не так с этим кодом?
и, пожалуйста, скажите мне, есть ли лучший способ сделать это? (без использования >на терминале)

6
задан Eight 25 June 2012 в 12:33
поделиться