Tal vez me puedan dar una mano, estoy haciendo algo parecido como un inventario. Todo funciona perfecto, para al momento de introducir los datos en el archivo el primero aparece perfecto y los demás en caracteres extraños.
Código C:
Ver originalstruct {
char producto[20];
int codigo;
float precio;
} inventario;
Código C:
Ver originalvoid menu(){
printf("\n\nMenu:\n=====\n\n"); printf("1.- Agregar a inventario\n"); printf("2.- Leer inventario\n"); FILE *db;
db
= fopen("DB/inventario.db", "wb");switch (datos.opcion){
case '1':
printf("\nCuantos productos deseas agregar: "); scanf("%i", &datos.
productos); for (datos.i = 0 ; datos.i < datos.productos ; datos.i++){
printf("Introduce el nombre del producto: "); fflush(stdout
); gets(inventario.
producto); printf("Introduce el codigo del producto: "); fflush(stdout
); scanf("%i", &inventario.
codigo); printf("Introduce el precio del producto: "); fflush(stdout
); scanf("%f", &inventario.
precio); fwrite(&inventario
, sizeof(inventario
), 1, db
); }
}
}