Código:
#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <iostream>
using namespace std;
#include <fstream>
#include <cstring>
#include <sstream>
struct alu
{
char nombre[30];
int edad;
float altura;
};
alu vec[10];
main()
{
int x,y,orden,n;
printf("Cuantas personas desea ingresar?: ");
scanf("%i",&n);
printf("\n");
ofstream fsalida("Datos.alu.dat",ios::out|ios::binary);
for (x=0; x<n;x++)
{
printf("Introduce el nombre: ");
setbuf(stdin,NULL);
gets(vec[x].nombre);
printf("Introduce la edad: ");
scanf("%i",&vec[x].edad);
printf("Introduce la altura: ");
cin>>vec[x].altura;
printf("\n\n");
fsalida.write(reinterpret_cast<char *>(&vec[x]),sizeof (alu));
}
fsalida.close();
ifstream fentrada ("Datos_alu.dat",ios::in |ios::binary);
for (x=0; x<n;x++)//Imprimir
{
fentrada.read(reinterpret_cast<char *>(&vec[x]),sizeof(alu));
printf ("Nombre: %s\n",vec[x].nombre);
printf ("Edad: %i\n",vec[x].edad);
printf ("Altura %.1f\n",vec[x].altura);
printf("\n\n");
}
fentrada.close();
getch();
}
Como puedo hacer otro programa pero que esta vez lea el archivo "Datos.alu.dat" sume las edades, imprima y lo guarde en el mismo archivo.
No tengo muy claro como hacer que abra el archivo y lo lea para poder manejar las edades.