[ Programmation C ]Readline
Fermé
x-timas
Messages postés
124
Date d'inscription
vendredi 7 mars 2008
Statut
Membre
Dernière intervention
17 décembre 2010
-
22 mai 2009 à 12:31
x-timas Messages postés 124 Date d'inscription vendredi 7 mars 2008 Statut Membre Dernière intervention 17 décembre 2010 - 22 mai 2009 à 13:41
x-timas Messages postés 124 Date d'inscription vendredi 7 mars 2008 Statut Membre Dernière intervention 17 décembre 2010 - 22 mai 2009 à 13:41
3 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 842
22 mai 2009 à 13:06
22 mai 2009 à 13:06
Salut,
Tu as la fonction fgets(FILE*).
fgets(stdin); pour lire une entrée clavier (attention à la valeur max).
fgets(fp); avec fp=fopen("fichier","r"); pour lire une ligne de fichier (attention à la valeur max).
Cdlt
Tu as la fonction fgets(FILE*).
fgets(stdin); pour lire une entrée clavier (attention à la valeur max).
fgets(fp); avec fp=fopen("fichier","r"); pour lire une ligne de fichier (attention à la valeur max).
Cdlt
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 842
22 mai 2009 à 13:25
22 mai 2009 à 13:25
En fait
Tu peux faire :
J'espère que ce code t'aidera à y voir plus clair.
Tu peux faire :
char buffer[500]; //ici précise une taille supérieure à la longueur maximum des lignes. while(fgets(buffer,sizeof buffer,fp)) { //si la ligne a été lu entièrement (et si ce n'est pas la dernière), //alors tu as le '\n' de stocker dans buffer char *p=strchr(buffer,'\n'); if(p==NULL) { puts("ligne non lue entièrement"); } else { //on enlève le '\n'; *p='\0'; //tu peux faire ici ton traitement de ligne //etc. } }
J'espère que ce code t'aidera à y voir plus clair.
x-timas
Messages postés
124
Date d'inscription
vendredi 7 mars 2008
Statut
Membre
Dernière intervention
17 décembre 2010
1
22 mai 2009 à 13:41
22 mai 2009 à 13:41
C'est exactement ce que je voulais savoir. Je vais tester sur mon programme et voir ce que ça donne.
Merci bq
Merci bq
22 mai 2009 à 13:19
ifconfig udp0 create vlan 1000
ifconfig udp6 create vlan 2000
ifconfig udp120 create vlan 1050
ifconfig udp0 175.120.6.100 netmask 255.255.240.0
...
Si j'ai bien compris je place ma fonction fgets dans la condition du while avec le numero de descripteur du ficher en question et elle me lira ligne par ligne avec le max 10000 par exemple. Mais avec les \n dans le fichier elle va me renvoyer à chaque fois une seule ligne stocké dans une buffer c'est ça?
Si c'est ça mon problème est réolu, car j'ai besoin de récuperer les données ligne par ligne et non pas à une taille bien précise
Alors?