J'ai un fichier "in.txt" où chaque contient une chaine de caractère.
Un exemple de ce fichier:
Citation:
aa bbb
cc dddd
bb a
aa
Je voulais remplir un tableau par ce fichier c'est à dire chaque case
contient une chaine de ligne de fichier
autrement :
case 1 contient la chaine de 1 ère ligne de fichier
case 2 contient la chaine de 2 ème ligne de fichier
...
Le nombre des lignes de fichier est nbre c'est le même que le nombre
de case de tableau.
Voici mon essai:
Code :
int main()
{
FILE *fp;
int nbre,i,N=10;
//Le nombre des combinaisons
nbre = pow(2,N) - (N+1);
fp = fopen("in.txt","r");
//copier le contenu du fichier dans le tableau
for(i=0; i < nbre;i++)
{
fgets(s, 100, fpComb);
tab[i] = strdup(s);
}
fclose(fp);
return 0;
}
J'ai problème: chaque case de tableau contient la chaine
correspondante mais de plus le caractère '\n'.
Je voulais la chaine seulement sans '\n'.
Comment résoudre ce problème ?
Merci.
Voir la petite correction de votre code (ᅵ tester toutefois, j'ai fait
ᅵa sans compilateur)
//copier le contenu du fichier dans le tableau
for(i=0; i < nbre;i++)
{
fgets(s, 100, fpComb);
l = strlen(s);
s[l-1] = 0x00; // On remplace le \n de la fin par un 0x00
tab[i] = strdup(s);
}
Vous devriez aussi vᅵrifier que fp est valide aprᅵs la ligne
fp = fopen("in.txt","r");
avant de l'utiliser ...
C'est quoi 0x00 ?
L�, �a calme. Je comprends mieux les autres questions, pour le coup.
Il vous a plusieurs fois �t� recommand� de faire l'acquisition du
Kernighan-Ritchie. Sans vouloir trop insister, vous devriez vraiment
l'envisager. Ca ne peut �tre que profitable. Il est �vident qu'il vous
manque beaucoup de bases du langage C.
Trouvez vous un bon livre de C, lisez le, et apprenez ᅵ vous servir de
Google, vous devriez progresser nettement plus vite qu'en dᅵbuggant
votre programme par l'intermᅵdiaire des news ...
Voilᅵ de quoi vous occuper pour les jours qui viennent :
http://www-roc.inria.fr/secret/Anne.Canteaut/COURS_C/cours.pdf
ftp://ftp.imag.fr/pub/labo-CLIPS/commun/C/Introduction_ANSI_C.pdf
etc.
Oui, et le K&R est facilement trouvable en ebook.