ouverture de fichier seekg
Voila mon problème :
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
| const int LGMAX_NOM_FICH = 20;
#include <stdlib.h>
#include <fstream>
#include <iomanip>
#include <iostream>
using namespace std;
main()
{
char nomfich [LGMAX_NOM_FICH + 1];
int n, num;
cout << "nom du fichier à consulter : ";
cin >> setw (LGMAX_NOM_FICH) >> nomfich;
ifstream entree (nomfich, ios::in);
if (!entree) { cout << "Ouverture impossible\n";
exit(1);
}
do
{ cout << "Numéro de l'entier recherché : ";
cin >> num;
if (num)
{ entree.seekg (sizeof(int) * (num-1), ios::beg);
entree.read ( (char *) &n, sizeof(int) );
if (entree) cout << "-- Valeur : " << n << "\n";
else { cout << "-- Erreur\n";
entree.clear ();
}
}
}
while (num);
entree.close ();
} |
Que font exactement les lignes en gras ? Que vient faire sizeof(int) * (num-1) ?
Merci 8-)