Bonjour, j'ai une petite fonction qui consiste à lire un fichier texte et affiche, à la suite, les mots (un mot etant separé par un espace.
Le seul prob c'est qu'elle ne marche pas, elle m'affiche le 1er mot bien et apres c'est n'importe quoi...je comprends pas


Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
void Mot(char* fich)
{ 
 std::ifstream ifile(fich); // Ouverture du fichier en lecture
  char cc[3];
  char buffer;
  strcpy(cc,"\0");
 if (ifile) 
  {  // si on a bien pu ouvrir le fichier
  	while (!ifile.eof()) 
    { // tant qu'on est pas en fin de fichier
    	strcpy(cc,"\0");  	
		ifile.get(buffer); // on lit un caractere
 
	    while(buffer == '\r' || buffer == '\n') ifile.get(buffer); 	
 
	    while (buffer != ' ')
	    {
	      	cc[strlen(cc)]=buffer;	
	      	ifile.get(buffer);   	      		
	    }
 
	    cc[strlen(cc)+1]='\0';
		std::cout << cc << std::endl;	
    }
  }
}

merci de votre aide