Problème : tellg se déplace dans le fichier
Bonjour.
J'essaye en ce moment de lire un fichier binaire fortran avec du C++, ce qui n'est déjà pas simple à la base. En plus j'ai un comportement étrange du C++ que j'ai du mal à comprendre :
En effet :
Code:
1 2 3 4 5 6
| for(i=0;i<110;i++)
{
fileStream.read((char*)&test, sizeof(test));
std::cout<<"i="<<i;
std::cout<<" val="<<test<<std::endl;
} |
et
Code:
1 2 3 4 5 6 7
| for(i=0;i<110;i++)
{
fileStream.read((char*)&test, sizeof(test));
std::cout<<"i="<<i;
std::cout<<" oct="<<fileStream.tellg();
std::cout<<" val="<<test<<std::endl;
} |
ne donnent pas le même résultat : tellg qui est sensé me renvoyer l'octet du fichier "où j'en suis" (si j'ai bien compris), semble se déplacer dans le fichier et la lecture donne ensuite n'importe quoi....
Si vous avez une explication je suis preneur parce que là je suis complètement perdu :calim2:.
Merci ;)