Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: ZedGe en 30 Enero 2012, 02:30 am



Título: Como pasar un fichero de salida como parametro
Publicado por: ZedGe en 30 Enero 2012, 02:30 am
Bueno quiero saber como pasar un fichero para escribir como salida.
En una función pido el nombre del fichero y lo abro, se lo paso como parámetro a otra función y esta escribe los datos.

Este es mi .h de la funcion

Código:
#ifndef ESCRITURA_H
#define ESCRITURA_H

class ESCRITURA
{
   public:
      void escritura(int reg, int reg2, std::ofstream archivo, int codop);
};

#endif

Asi llamo y creo

Código:
 ESCRITURA escritura;//Se crea el constructor de la funcion Escritura
   ofstream fichero;
   char *nombre;
   cout << "\nIntroduzca El Nombre Del Fichero De Salida: \n";
   //recibir dato desde teclado
   cin >> nombre;
   fichero.open(nombre, ofstream::out);
   escritura.escritura(reg,0,fichero,codop);//Se llama a la funcion escritura


y recibo asi


Código:
void ESCRITURA::escritura(int reg, int reg2, std::ofstream archivo, int codop)

pero al compilar tira una cantidad de errores incomprensibles.....
quisiera ver si estoy en lo correcto o no



Título: Re: Como pasar un fichero de salida como parametro
Publicado por: naderST en 30 Enero 2012, 04:38 am
Pasa std::ofstream por referencia.


Título: Re: Como pasar un fichero de salida como parametro
Publicado por: soyloqbuskas en 30 Enero 2012, 12:05 pm
¡Buenas ZedGe!

Para leer un fichero y dejarlo cargado en un char *, puedes usar la funcion mmap();

http://www.kernel.org/doc/man-pages/online/pages/man2/mmap.2.html (http://www.kernel.org/doc/man-pages/online/pages/man2/mmap.2.html)

En cuanto a los errores de compilacion, deberas ponernos el codigo para que podamos ayudarte....Aun asi...

Código:
escritura.escritura(reg,0,fichero,codop);//Se llama a la funcion escritura		

Aqui cuando llamas al metodo escritura(), le pasas las variables "reg" y "codop" las cuales no veo declaradas en el bloque de codigo que has dejado, asi que espero que las tengas declaradas aunque no las hayas puesto en el post....

Un saludo.


Título: Re: Como pasar un fichero de salida como parametro
Publicado por: ZedGe en 30 Enero 2012, 15:03 pm
es que el programa es un simulador... el cual tiene mínimo 10 archivos y 10 cabeceras.... no puedo poner todo el código xD


Vere que sale con lo que me han dado gracias