ca y est j'ai reussi à regler mon probleme, c'était bien une histoire de calloc on dirait
/**
*renvoie un string de la forme "num=\"0n\"" ou nh est le numero de la zone
* @param nomFicJourn: le nom du fichier journal
* @return un string de la forme "num=\"0n\"" ou nh est le numero de la zone
*/
int nomJournalToNumZone(char *nomFicJourn){
printf("nomFicJournal %s\n",nomFicJourn);
fflush(stdout);
int i = 0, cptNumJourn = 5;
char *positioneurDeb, *positioneurFin, *copieFicJourn;
if (strstr(nomFicJourn,PREFIX_FIC_JOURN) != NULL && strstr(nomFicJourn,SEPARATEUR_FIC_JOURN) != NULL){
positioneurDeb = strstr(nomFicJourn,PREFIX_FIC_JOURN)+sizeof(char); // on se place apres le prefix
positioneurFin = strstr(nomFicJourn,SEPARATEUR_FIC_JOURN); // on se place sur le separateur "-"
while (i < positioneurFin - positioneurDeb){
numJournal[cptNumJourn + i] = *(positioneurDeb + i);
i++;
}
}
printf("%s \n", numJournal);
fflush(stdout);
return 0;
}
et l'appel de la fonction
numJournal = calloc(9, sizeof(char));
numJournal[0] = 'n';
numJournal[1] = 'u';
numJournal[2] = 'm';
numJournal[3] = '=';
numJournal[4] = '\"';
numJournal[5] = '0';
numJournal[6] = '0';
numJournal[7] = '\"';
numJournal[8] = '\0';
nomJournalToNumZone(nomFicJournal);
ca fait beaucoup de lignes pour pas grand chose mais ca a l'air de marcher.
Avant ca, j'avais fait:
numJournal="num=\"00\"";
nomJournalToNumZone(nomFicJournal);
mais ca semblait poser probleme
tu as l'air de coder pour Linux/Gygwin
Affirmatif :P
ca y est j'ai reussi à regler mon probleme, c'était bien une histoire de calloc on dirait
et l'appel de la fonction
ca fait beaucoup de lignes pour pas grand chose mais ca a l'air de marcher.
Avant ca, j'avais fait:
mais ca semblait poser probleme
Affirmatif :P