Probleme avec une fonction ofstream [C++]
Salut tous le monde,
je dois realiser un programme qui enregistre les données d'un tableau dans un fichier txt, mais j'ai un probleme avec la fonction ofstream
j'ai realiser ce code mais ça plante :(
sachant que si j'enregistre un string normale ça marche
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
| #include <iostream>
#include <fstream>
using namespace std;
struct date_n{
int jour;
int mois;
int annee;
}; //structure date
struct stag{
string nom;
string prenom;
date_n date_naissance;
};
void enrg(stag stagiaire[10]) //fonction contenant ofstream
{
for (int i=0;i<10;i++)
{
ofstream test("stagiaire.txt",ios::in|ios::app);
test << "Nom: "<< stagiaire[i].nom<<endl;
test << "Prenom: "<< stagiaire[i].prenom<<endl;
test << "Date de naissance: "<< stagiaire[i].date_naissance.jour<<"/"<<stagiaire[i].date_naissance.mois<<"/"<<stagiaire[i].date_naissance.annee<<endl<<endl;
test.close();
}
}
int main()
{
stag stagiaire[10];
for (int i=0; i<10;i++)
{
cout << "Stagiaire numero "<<i+1<<endl;
cout << "Entrez le nom: ";
cin >> stagiaire[i].nom;
cout << "Entrez le prenom: ";
cin >> stagiaire[i].prenom;
cout <<"Entrez la date de naissance: "<<endl;
cout << "Jour: ";
cin >> stagiaire[i].date_naissance.jour;
cout << "Mois: ";
cin >> stagiaire[i].date_naissance.mois;
cout << "Annee: ";
cin >> stagiaire[i].date_naissance.annee;
}
cout <<"\n*********** LISTE DES STAGIAIRES ***********\n"<<endl;
for (int i=0;i<10;i++)
{
cout << "\tLe stagiaire "<<i+1<<endl;
cout << "Nom: "<< stagiaire[i].nom<<endl;
cout << "Prenom: "<< stagiaire[i].prenom<<endl;
cout << "Date de naissance: "<< stagiaire[i].date_naissance.jour<<"/"<<stagiaire[i].date_naissance.mois<<"/"<<stagiaire[i].date_naissance.annee<<endl<<endl;
}
enrg(&stagiaire[10]); //appel de la fonction
return 0;
} |
Merci de m'aidez