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

  FORUM HardWare.fr
  Programmation
  C++

  Flux désynchronisé comment régler ca?

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

Flux désynchronisé comment régler ca?

n°932431
fullnight
Posté le 27-12-2004 à 13:00:10  profilanswer
 

Bonjour à tous
 
je sèche..
j'aimerais savoir comment accepter "Jean"  "Van Den Bigelaar" dans une variable string.
           
 
en faisant
cout << " entrez votre nom " << endl;
 cin >> nomClient;
cout << " entrez votre prenom"<<endl;
 cin >> PrenomClient;

 
ca ne marche pas correctement.
il encode je ne sais quoi dans le nom et puis il ne me demande meme pas le prénom avec le cin.
il doit y avoir une desynchronisation du flux !
comment faire pour régler ce prob des espaces a l'encodage svp ??


Message édité par fullnight le 28-12-2004 à 01:46:45
mood
Publicité
Posté le 27-12-2004 à 13:00:10  profilanswer
 

n°932489
jagstang
Pa Capona ಠ_ಠ
Posté le 27-12-2004 à 14:01:51  profilanswer
 

cin.getline()

n°932499
fullnight
Posté le 27-12-2004 à 14:15:57  profilanswer
 

ca ne marche pas avec les strings mais avec les char *
 
j'ai déja essayé ,ca ne change rien
esaye toi meme

n°932505
jagstang
Pa Capona ಠ_ಠ
Posté le 27-12-2004 à 14:45:22  profilanswer
 

Code :
  1. std::string a ;
  2. cout << "a : " ;
  3. getline(cin,a,'\n');
  4. cout << a ;

n°932775
fullnight
Posté le 27-12-2004 à 23:00:06  profilanswer
 

ca ne marche tj pas !
pour encoder il faut taper 2x sur enter !!
il enregistre ce qu'il y'a AVANT le enter     dans nomClient
il enregistre ce qu'il y'a APRES le enter dans prenomClient
il refuse le second getline !!!!!! :'(
 
 
#include <iostream>
#include <string>
using namespace std;
int main()
{
 string nomClient,prenomClient;
 
 cout<<"nom client"<<endl;
     getline(cin,nomClient,'\n');
 
  cout << nomClient<<endl;
 
 cout<<"prenom client"<<endl;
 getline(cin,prenomClient,'\n');
 cout<< prenomClient<<endl;
 
 return EXIT_SUCCESS;
}


Message édité par fullnight le 27-12-2004 à 23:23:15
n°932787
Taz
bisounours-codeur
Posté le 27-12-2004 à 23:17:30  profilanswer
 

le dernier argument de getline est optionnel

n°932788
fullnight
Posté le 27-12-2004 à 23:24:35  profilanswer
 

donc?

n°932790
Taz
bisounours-codeur
Posté le 27-12-2004 à 23:31:09  profilanswer
 

donc pas la peine de le mettre

n°932793
fullnight
Posté le 27-12-2004 à 23:33:46  profilanswer
 

moi je veux un délimiteur.
 
et surtout régler ce probleme de désynchronisation

n°932794
Taz
bisounours-codeur
Posté le 27-12-2004 à 23:35:55  profilanswer
 

putain, je te dis que le délimiteur par défaut de getline c'est '\n' ... t'es pas sorti

mood
Publicité
Posté le 27-12-2004 à 23:35:55  profilanswer
 

n°932796
fullnight
Posté le 27-12-2004 à 23:39:22  profilanswer
 

putain, je veux régler le vrai probleme pas savoir si une chose est optionnelle car ca ne m'avance pas

n°932797
Taz
bisounours-codeur
Posté le 27-12-2004 à 23:41:50  profilanswer
 

MAIS Y A AUCUN PROBLEME

n°932798
fullnight
Posté le 27-12-2004 à 23:43:04  profilanswer
 

je te jure que le compilateur fait pas ce que je demande !
 
il désynchronise le flux dirait on !
 
car je dois taper 2x sur enter pour encoder le nomClient !
 
(j'ai enlevé tout les délimiteurs pourtant)

n°932799
fullnight
Posté le 27-12-2004 à 23:43:44  profilanswer
 

a quoi est du ce problème?
sur certaines machines il me fait le coup

n°932802
Taz
bisounours-codeur
Posté le 27-12-2004 à 23:45:41  profilanswer
 

tu utilises quoi ?

n°932804
fullnight
Posté le 27-12-2004 à 23:46:23  profilanswer
 

je fais un  
 
cout << nomClient << " crasse: "<< cin.peek() << (char)cin.get();
 
pour voir la crasse qui traine
et c'est    --> 10
je ne sais pas d'ou sort ce 10

n°932805
fullnight
Posté le 27-12-2004 à 23:46:45  profilanswer
 

j'employe microsoft visual c++

n°932809
Taz
bisounours-codeur
Posté le 27-12-2004 à 23:59:15  profilanswer
 

change de compilateur

n°932810
fullnight
Posté le 28-12-2004 à 00:01:05  profilanswer
 

ok
il est po bien?

n°932811
Taz
bisounours-codeur
Posté le 28-12-2004 à 00:08:13  profilanswer
 

ben tu vois bien qu'il merde

n°932812
fullnight
Posté le 28-12-2004 à 00:11:03  profilanswer
 

je sais pas si c la faute du compilo
je demandais  c tout

n°932814
Taz
bisounours-codeur
Posté le 28-12-2004 à 00:17:01  profilanswer
 

c'est la faute de ta bibliothèque qui va avec ton compilo

n°932815
fullnight
Posté le 28-12-2004 à 00:17:45  profilanswer
 

j'essaye de compiler mon fichier avec dev c++
mais il me dit unable to run program file

n°932819
Taz
bisounours-codeur
Posté le 28-12-2004 à 00:30:25  profilanswer
 

normal

n°932820
fullnight
Posté le 28-12-2004 à 00:33:41  profilanswer
 

pourquoi ?
aide moi si tu sais

n°932822
Taz
bisounours-codeur
Posté le 28-12-2004 à 00:34:22  profilanswer
 

vire ton return à la fin

n°932824
fullnight
Posté le 28-12-2004 à 00:37:13  profilanswer
 

j'ai choppé ca sur un site mais ca m'aide pas
 
 
 
Note : Remarquez que le caractère de saut de ligne étant lu, il est nécessaire de saisir deux retours de chariot successifs pour que la méthode getline renvoie son résultat. Comme pour toutes les méthodes de lectures formatées, ce caractère interrompt la lecture dans le flux d'entrée standard du programme et se trouve donc encore dans le tampon d'entrée lors de la lecture suivante. Cela explique que dans le cas de lectures successives, il faut extraire ce caractère du flux d'entrée manuellement, par exemple à l'aide de la méthode get. C'est ce que cet exemple réalise sur sa dernière ligne pour l'envoyer sur le flux de sortie standard.  
 

n°932825
fullnight
Posté le 28-12-2004 à 00:38:26  profilanswer
 

g viré le return
ca ne change rien
il me dit tj unable to run program file
pas moyen de le compiler et de le runer

n°932826
Taz
bisounours-codeur
Posté le 28-12-2004 à 00:39:44  profilanswer
 

DTC

n°932827
fullnight
Posté le 28-12-2004 à 00:45:28  profilanswer
 

traduction? c quoi DTC
Danish Touringcar Championship  ?

n°932833
fullnight
Posté le 28-12-2004 à 00:58:25  profilanswer
 

bon j'ai mis dev ++ 4
cette fois il compile
mais c tj le meme problème !
il demande 2 enter pour le 1er getline (1er string)
 
et il demande 1 enter pour le 2 eme getline mais n'affiche pas la valeur du second string

n°932836
Taz
bisounours-codeur
Posté le 28-12-2004 à 01:09:33  profilanswer
 

mon oeil

n°932837
Gfreeman
http://www.FGFasp.com
Posté le 28-12-2004 à 01:11:25  profilanswer
 

fullnight a écrit :

traduction? c quoi DTC
?


Dans Ton Cul...

n°932849
fullnight
Posté le 28-12-2004 à 01:41:54  profilanswer
 

chut toi
 
HELP
 
one miracle please !!
 
COMMENT FAAAAAAAIIIIIIIIIIIIREEEEEEEEEEEEEEEEEEEE
ce flux est désynchronisé !


Message édité par fullnight le 28-12-2004 à 01:45:50
n°932851
Taz
bisounours-codeur
Posté le 28-12-2004 à 01:54:40  profilanswer
 

non, il est pas désynchronisé, c'est toi qui sait pas où est ta touche [Entrée]. pAr définition, cin et cout sont synchronisé. Ca va faire 10ans que des gens font des cout/getline/cout, et toit tu viens nous expliquer que ça marche pas : le problème, c'est toi.
Moi je joue avec ça chez moi
 

Code :
  1. #include <string>
  2. #include <iostream>
  3. int main()
  4. {
  5.   std::string a, b;
  6.   std::cout << "a : ";
  7.   std::getline(std::cin, a);
  8.   std::cout << "b : ";
  9.   std::getline(std::cin, b);
  10.   std::cout << '"' << a << '"'
  11.     << '\n'
  12.     << '"' << b << '"'
  13.     << '\n';
  14. }

et ça marche du tonnerre.

n°932853
fullnight
Posté le 28-12-2004 à 02:12:23  profilanswer
 

http://membres.lycos.fr/zonefullnight/la_preuve.JPG


Message édité par fullnight le 28-12-2004 à 02:13:03
n°932854
fullnight
Posté le 28-12-2004 à 02:13:48  profilanswer
 

putain de compilo
 
microsoft hein :@ :fou:


Message édité par fullnight le 28-12-2004 à 02:18:13
n°932856
fullnight
Posté le 28-12-2004 à 02:16:51  profilanswer
 

enfin il marche avec dev c++
finalement c pas trop tôt un résultat ca fait du bien!
merci !
 
putain j'ai tout un projet avec une 30 aine de fichiers
 
a balancer d'un compilo a l'autre maintenant.
mh ah lala


Message édité par fullnight le 28-12-2004 à 02:19:23
n°932925
Lam's
Profil: bas.
Posté le 28-12-2004 à 10:35:01  profilanswer
 

Comment régler ça ?  
 
Bah passer à un compilo qui a moins de 10 ans. La STL qui est dans VS6 est la même que celle de VS5, c'est dire si elle date. Donc soi tu passes à VC++7.1 (qui est GRATUIT), soit tu corriges les bugs de ta STL qui sont connus depuis la nuit des temps.
 
http://www.dinkumware.com/vc_fixes.html
(rubrique istream).

n°934476
fullnight
Posté le 31-12-2004 à 00:42:45  profilanswer
 

toi tu as cartonné :-)

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Flux désynchronisé comment régler ca?

 

Sujets relatifs
Comment regler un probleme d'impression ?[flux] créer un flux nul ou un flux fictif
Comment créer un flux RSS ?Php qui gere les flux https.
[C#]Gestion des fluxc++ builder 6 pro et les flux
flux vers fichier ET vers console en même tempsComment régler la taille de memoire JVM ?
[Web/PHP/XML] Inserer un flux XML dans une page PHPredirection de flux
Plus de sujets relatifs à : Flux désynchronisé comment régler ca?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR