Prob avec chaine de caractère

Signaler
Messages postés
1
Date d'inscription
vendredi 4 juin 2004
Statut
Membre
Dernière intervention
4 juin 2004
-
Messages postés
62
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
14 octobre 2005
-
bonjour tout le monde avant tout.
voila mon probleme :
jai fait un programme qui detecte les commentaire d'un programmeet qui les met dans une page html.Il prend ce qu'il ia entre /* et */.Le probleme :
/* bonjour toute le monde
salut */ il faut que jinsere les balise apres monde et ji arrive pa ... voici lmon code :
jai pa mi les declaration

while(fscanf(fichier_source,"%c",&uncar)!=EOF)
{
if(uncar=='/')
{
fscanf(fichier_source,"%c",&uncar);
if(uncar=='*')

{
do {
fscanf(fichier_source,"%c",&uncar);



t[i]=uncar;

i++;

} while (uncar!='*');
i--;
t[i]='<';
i++;
t[i]='p';
i++;
t[i]='>';
i++;
}

}
else
{
t[0]=' ';
t[i]=uncar;

}


}
t[i]='\0';

}

fclose(fichier_source); //ferme le fichier
fflush(stdin);
//printf("%s",t);
//getch();

fichier_html=fopen(html,"w");

{

fprintf(fichier_html,"<html>\n<head>\n<title>Documentation</title></head>%s</html> ",t);
}

fclose(fichier_html);

}
merci d'avance de votre aide

1 réponse

Messages postés
62
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
14 octobre 2005

salut

bon, ton ptit prog est pas trop propre, sans vouloir te vexer...
- evite d'utiliser fscanf, c'est pas trop top comme fonction; il vaut mieux utiliser la fonctions fgets , puis d'analyser la chaine pour voir si elle contient des commentaires
si tu as des /* et pas de */ dans la chaine ( le commentaire ce fini plus loin ) , tu recopie ta ligne, tu ajoute ta balise, puis tu recopie les ligne dan ton fichier jusqu'a se que tu trouve le */, puis ainsi de suite

j'espere que tu a compris ce que j'ai voulut te dire....

sinon le pb dans ton code, c'est que tu attend le '*' pour mettre ta balise ..... faut que tu la mette quand le caractère est un saut de ligne...

voila j'espere que sa va t'aider

bonne prog

neoh_p [=- coding spirit -=]
------- since 1999 ------