La sortie est une boucle infinie de "impossible d'ouvrir le fichier". Qu'ai-je fait de mal? Merci d'avance. (P.s Je suis en train de tester la condition qu'il ne peut pas ouvrir le fichier et poursuivre le traitement en obtenant le nom de fichier suivant à partir du vecteur)clear() passe en boucle infinie
#include <iostream>
#include <istream>
#include <fstream>
#include <vector>
#include <string>
using namespace std;
int main()
{
ifstream input;
vector<string> files;
files.push_back("ifile");
files.push_back("ifile2");
vector<string>::const_iterator iter=files.begin();
while (iter!=files.end())
{
string s;
input.open(iter->c_str());
if (!input)
{
cerr<<"cannot open the file"<<endl;
input.close();
input.clear();
continue;
}
while(input>>s)
cout<<s<<' '<<ends;
input.close();
input.clear();
cout<<endl;
++iter;
}
return 0;
}
clear est normalement appelé sur un fichier ouvert après un badbit pour continuer le traitement du fichier. Essayez juste de le sortir? pas sûr de ce qu'il fait ici. –