Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2704 connectés 

 


Dernière réponse
Sujet : [C] probleme de fgets()
Toxin Eh bien si tu as fait le test oui c'est uniquement sur le hd.

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
Toxin Eh bien si tu as fait le test oui c'est uniquement sur le hd.
antp Je croyais aussi, mais en général si je vire 2 caractères il me vire le dernier caractère, juste avant le retour de ligne... Serait-ce uniquement dans le hdd et pas dans les chaines que le \n prend deux caractères ?
Toxin Ca marche sous DOS/Windows ? Je croyais qu'il y avait 2 caractères pour le \n dans cet environnement ?
grahf oui c vrai, je suis trop con, merci !
antp C'est tout simple quand même:
 
buf[strlen(buf)-1]=0;
tu mets un \0 à la place du \n, et c'est bon !
Y a 2 \0 mais c pas grave...
grahf oui, c deja ce que je fait, mais je me demandais si il y avait pas une fonction C qui le faisait deja
J'ai lu dans des docs la fonction strstr_sup qui ferait ca mais elle est pas reconnue par linux
R@NNIS ben tu te la code toi meme cette fonction c est pas sorcier...
tu fais genre une fonction char * ki retourne la chaine sans '\n'
et hop le tour est joue.
grahf voila, je fais un fgets(buffer, 256, stdin); pour récupérer une chaine tapée par l'utilisateur sous la console. Le probleme c que je chope le '\n' final a la fin.
 
Pour le moment je dois faire un truc du style :
strncpy(buffer,nufer2,sizeof(buffer)-2);     //on vire le '\n' et le '\0' a la fin
strcat(buffer2, '\0');
 
mais c un petit peu lourd
 
Est ce qu'il y a pas une fonction C pour faire ca ?
(ou du style remplacer une chaine de car par une autre)

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)