Como redireccionar stdout para um ficheiro de um programa C/C ++ Visual

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 58667
Exclusão de Responsabilidade para Conteúdo sem Suporte na KB
Este artigo foi escrito sobre produtos para os quais a Microsoft já não fornece suporte. Por conseguinte, este artigo é oferecido "tal como está" e deixará de ser actualizado.
Sumário
Este artigo explica como redireccionar stdout para um ficheiro a partir de um programa C, em seguida, restaurar stdout original posteriormente no mesmo programa. A função C normalmente utilizada para redireccionar stdout ou stdin está freopen(). Para redireccionar stdout num ficheiro denominado FILE.TXT, utilize a seguinte chamada:
   freopen( "file.txt", "w", stdout );
esta instrução faz com que todas as saídas subsequente, normalmente, é redireccionada para stdout, para ir para o ficheiro FILE.TXT.

Para retornar stdout a apresentação (a predefinição stdout), use a chamada seguinte:
   freopen( "CON", "w", stdout );
em ambos os casos, verifique o valor devolvido do freopen() para garantir que o redireccionamento realmente teve lugar.

Segue-se um programa curto para demonstrar o redireccionamento de stdout:

Código de exemplo

// Compile options needed: none#include <stdio.h>#include <stdlib.h>void main(void){   FILE *stream ;   if((stream = freopen("file.txt", "w", stdout)) == NULL)      exit(-1);   printf("this is stdout output\n");   stream = freopen("CON", "w", stdout);   printf("And now back to the console once again\n");}
Este programa assume que stdout é redireccionada para a consola no fim do programa.

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 58667 - Última Revisão: 04/28/2005 20:23:04 - Revisão: 4.0

The C Run-Time (CRT)

  • kbmt kbhowto KB58667 KbMtpt
Comentários