Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/04/2013, 05:51
Fw190
 
Fecha de Ingreso: junio-2010
Ubicación: Madrid
Mensajes: 620
Antigüedad: 13 años, 11 meses
Puntos: 73
Respuesta: Salida estandar.

Si el programa es en modo texto, desde la consola ejecutas, por ejemplo,

mi_programa > salida.txt

con lo que todo lo que mandes a la pantalla te lo enviará al archivo salida.txt.

Si no es eso lo que buscas, en C (no estoy muy ducho en C++) se podría hacer, por ejemplo,

Código C:
Ver original
  1. int main(void)
  2. {
  3.     int     volcar;
  4.     double  x;
  5.     FILE    *Archivo;
  6.  
  7.     // volcar=0 te enviará la salida a la pantalla
  8.     // volcar=1 te enviará la salida al archivo "salida.txt"
  9.     volcar = 1;
  10.     if (volcar)
  11.         Archivo = fopen("Salida.txt", "w");
  12.     else
  13.         Archivo = stdout;
  14.     x = 1.0;
  15.     fprintf(Archivo, "X = %f\n", x);
  16.     fclose(Archivo);
  17.     return 0;
  18. }

dado que printf(...) equivale a fprintf(stdout, ...).

En C++ quizá se pueda sobrecargar cout para hacer algo parecido (sé que C++ permite la sobrecarga de funciones, pero no sé si con cout se puede).