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

 


Dernière réponse
Sujet : [C] != entre fgets() et scanf()
LetoII

zeux a écrit a écrit :

 
Regarde mon post je me suis planté ;)




 
HeHe là dacord :)


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
LetoII

zeux a écrit a écrit :

 
Regarde mon post je me suis planté ;)




 
HeHe là dacord :)

juju_le_barbare Merci vous 3 ;)
Zeux

LetoII a écrit a écrit :

 
 
C pas garanti que ça marche ça, je l'ai déja vu foirer en beauté




Regarde mon post je me suis planté ;)

LetoII

zeux a écrit a écrit :

 
bah non:
 

Code :
  1. scanf("%s\n", pBuf);






 
C pas garanti que ça marche ça, je l'ai déja vu foirer en beauté

Zeux

LetoII a écrit a écrit :

Oui effectivement, mais le comportement de base quand on récupère une chaîne c ça, et pour lui faire récupérer tout une ligne d'un coup c le bordel tout de même




bah non:
 

Code :
  1. Désolé je corrige :
  2. scanf("%[^\n]\n", pBuf);
  3. et non :
  4. scanf("%s\n", pBuf);


 
Ma mémoire me fait défaut  :sweat:  
 
 
 

LetoII Oui effectivement, mais le comportement de base quand on récupère une chaîne c ça, et pour lui faire récupérer tout une ligne d'un coup c le bordel tout de même
Zeux

LetoII a écrit a écrit :

new appel l'allocation de mémoir, rajoute éventuellemnt un pointeur vers la table des méthodes virtuelles puis appel le contructeur sur l'espace méoir alloué, c la seul différence.
 
fgets te permet de récupérer tout une ligne, scanf s'arréte au premier espace




 :non: scanf ne s'arrête pas au premier espace forcément, on peut lui passer de véritables masque afin de récupèrer plusieurs infos sur une seule ligne  :jap:

LetoII new appel l'allocation de mémoir, rajoute éventuellemnt un pointeur vers la table des méthodes virtuelles puis appel le contructeur sur l'espace méoir alloué, c la seul différence.
 
fgets te permet de récupérer tout une ligne, scanf s'arréte au premier espace
dolomit respectivement version c++ et version c
 
 :)  :)
juju_le_barbare Salut,
 
En fait tout est dans le titre, quelle est la différence?
 
Et aussi quelle est la != entre :
 

Code :
  1. char *a = new char[10];


 
et
 

Code :
  1. char *a;
  2. a = malloc(10);


 
merci, @++
 
jujuuuuuuuuuu !!!!!!!!!!!


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