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

 


Dernière réponse
Sujet : [C] cin et scanf !!!
antp

jupiler a écrit a écrit :

ou simplement gets()




 
Je n'aime pas gets() pcq il ne teste pas la longueur du buffer à ma connaissance, c'est donc une source de crash. Par contre fgets() sur stdin on doit lui spécifier la longueur maximale du buffer.


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
antp

jupiler a écrit a écrit :

ou simplement gets()




 
Je n'aime pas gets() pcq il ne teste pas la longueur du buffer à ma connaissance, c'est donc une source de crash. Par contre fgets() sur stdin on doit lui spécifier la longueur maximale du buffer.

End-i merci les gars maintenant ca marche enfin!  :hello:
jupiler ou simplement gets()
antp Il y a aussi fgets(buffer,size,stdin) (du genre de scanf mais il ne s'arrête qu'au \n et pas aux espaces) si tu veux un truc C (sans ++)

 

[edit]--Message édité par antp--[/edit]

gilou C'est normal, cin par defaut s'arrete au premier blanc rencontre (et non extrait). Donc pour demarrer, tu peux d'abord sauter les blanc en debut de texte (cin>>ws>>Titre; ). cin va te mettre tout le texte jusqu'au prochain blanc (ou fin de ligne), que tu peux tester par isspace(cin.peek()) et alors, tu peux boucler...
 
ou plus simplement, tu peux utiliser cin.getline(...)  
A+,

 

[edit]--Message édité par gilou--[/edit]

End-i salut,
quand j'utilise cin ou scanf,
le texte entré arrete après le premier espace :fou:  
 
par exemple:  
 
cin >> Titre;     // et je tape :        fuck you
cout << Titre;  // affiche seulement :   fuck     :gun:  
 
est-ce que ca vous est déjà arrivé?
vous savez pourquoi ca fait ca?
:??:  :??:  :??:  
merci d'avance...

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