Ayuda con ficheros
Hola a todos estoy haciendo una funcion de bajas de clientes.
Lo que quiero hacer es abrir un fichero auxiliar en modo escritura y el fichero de clientes en lectura.
entonces tengo que comparar los dos para que si son coincide el registro que no lo escriba y asi en el fichero auxiliar no aparece.
Despues le cambio el nombre al auxiliar y borro el otro.
El problema que tengo es que no se muy bien como comparar los registros del fichero.
Lo que quiero hacer es abrir un fichero auxiliar en modo escritura y el fichero de clientes en lectura.
entonces tengo que comparar los dos para que si son coincide el registro que no lo escriba y asi en el fichero auxiliar no aparece.
Despues le cambio el nombre al auxiliar y borro el otro.
El problema que tengo es que no se muy bien como comparar los registros del fichero.
Si los registros no contienen punteros (es decir, sus campos son tipo int, char, etc o char[n], int[n] con el array de tamaño fijo), puedes compararlo con funciones de comparar memoria, estilo memcmp().
Esta función es de C de linux, imagino que en visual C++ o el compilador que uses haya equivalentes.
Por ejemplo
Cliente a;
Cliente b;
if (memcmp (&a, &b) == 0)
{
// son iguales.
}
No estoy seguro, pero se que funcionan cosas como a=b. Quizas funcione a==b, aunque deberás probarlo.
Se bueno.
Esta función es de C de linux, imagino que en visual C++ o el compilador que uses haya equivalentes.
Por ejemplo
Cliente a;
Cliente b;
if (memcmp (&a, &b) == 0)
{
// son iguales.
}
No estoy seguro, pero se que funcionan cosas como a=b. Quizas funcione a==b, aunque deberás probarlo.
Se bueno.
