Bonjour!
Voilà mon problème :
je désire lire un fichier, puis le parser, afin d'en extraire des données balisées
J'ai donc le contenu du fichier dans une chaine char* appelée ptr2.
Jessaye donc ensuite de découper le fichier :
char *ptr1;
int length, i=0;
while(ptr1 = strstr(ptr2, "<title>"))
{
ptr2 = strstr(ptr1, "</title>");
length = ptr2-7-ptr1;
title[i] = substr(ptr1, 7, length);
i++;
}
J'ai écrit la fonction substr :
char* substr(char* ori, int deb, int lg)
{
char *string;
string[lg] = '\0';
for(int i=0; i<lg; i++)
{
string[i] = '0';
}
return string;
}
Mon problème : le script parvient a lire le 1er élément balisé, mais les suivant (ils sont au total 0 non)
J'ai donc placé des printf un peu partout dans mon code, pour étudier l'évolution de ptr2. Je constate que jusqu'a lappel de la fonction substr, ptr2 se comporte normalement (j'obtiens ce a quoi je m'attendais).
Par contre après substr, tous mes pointeurs prennent la valeur de string. Quelqu'un aurait il une idée?
Merci d'avance!