begin process at 2010 02 09 21:36:10
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Probleme, aide moi svp!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme, aide moi svp!

samedi 4 février 2006 à 01:10:12 | Probleme, aide moi svp!

lanbook

Bonjour, j'ai fait un petit programme en C++ qui permet de saisir et d'affichir des donneés. Le programme marche bien sauf au moment où l'on quitte, il affiche un message d'erreur. Je ne sais pas pourquoi. Répondez moi si vous savez. Merci d'avance.
et voici le code:
----------------------------------------------------------------------------------------
#include <iostream.h>
#include <string.h>
#include <stdlib.h>
typedef char chaine[25];
/******************* Classe personne ******************/
class personne{
private:
 chaine nom, prenom, adr, CP, ville;
public:
 personne();
 void saisir();
 void aff();
};
personne::personne(){
 strset(this->nom,'\0');
 strset(this->prenom,'\0');
 strset(this->adr,'\0');
 strset(this->CP,'\0');
 strset(this->ville,'\0');
}
void personne ::saisir(){
 cout <<"\n ----------  SAISIE des infos Personne -----------";
 cout <<"\n -- Nom        : ";
 cin.ignore();
 cin.getline(this->nom,30,'\n');
 
 cout <<"\n -- Prenom     : ";
 cin.getline(this->prenom,30,'\n');
 
 cout <<"\n -- Adresse    : ";
 cin.getline(this->adr,30,'\n');
 
 cout <<"\n -- Code postal: ";
 cin.getline(this->CP,30,'\n');
 
 cout <<"\n -- Ville      : ";
 cin.getline(this->ville,30,'\n');
}
void personne ::aff(){
 cout <<"\n ----------  Infos Personne -----------";
 cout <<"\n -- Nom        : "<<this->nom<<endl;
 cout <<"\n -- Prenom     : "<<this->prenom<<endl;
 cout <<"\n -- Adresse    : "<<this->adr<<endl;
 cout <<"\n -- Code postal: "<<this->CP<<endl;
 cout <<"\n -- Ville      : "<<this->ville<<endl;
}
/*------------------------------------MAIN-------------------------------------*/
void main(){
 personne p;
 int choix;
 do{
  cout <<"\n ----------  infos Personne  ---------------------------";
  cout <<"\n --      1 --> Saisi                                  --";
  cout <<"\n --      2 --> Afficher                               --";
  cout <<"\n --      0 --> Quitter                                --";
  cout <<"\n -------------------------------------------------------";
  cout<<"\n\n            Votre choix --> ";
  
  cin>>choix;
  switch (choix){
  case 1 : p.saisir();  break;
  case 2 : p.aff();  break;
  case 0 : cout << "\n ---------------- FIN --------------\n";break;
  default : cout << "\n ---------------- Error-------------\n";break;
  }
 }while (choix !=0);
}
 



---------------------------------------------------------------------------------------


Lân
samedi 4 février 2006 à 02:05:03 | Re : Probleme, aide moi svp!

GEDEON

Lorsque tu quitte... il faut que tu quitte réellement !!!!

a la fin inscrit plutot :

  case 1 : p.saisir();  break;
  case 2 : p.aff();  break;
  case 0 :
{
    cout << "\n ---------------- FIN --------------\n";
    system.exit(0);
}
  default : cout << "\n ---------------- Error-------------\n";break;


A la +

Steve
samedi 4 février 2006 à 10:44:33 | Re : Probleme, aide moi svp!

julienbj


Pas besoin de system.exit(0) normalement.
Il doit quitter la fonction main des qu'il quitte le do...while puisqu'il n'y a rien derriere.

Tu peux nous écrire l'erreur qu'il te met?

Vive le C
Tchao
Savon
samedi 4 février 2006 à 13:29:02 | Re : Probleme, aide moi svp!

lanbook

L'ereur :                 
---------------------------------------------------------------------------------------------------------
Lân
samedi 4 février 2006 à 18:30:05 | Re : Probleme, aide moi svp!

lanbook

j'ai une petite faute:  
                  typedef char chaine[25]; => typedef char chaine[30];
mais bon, ce n'est pas là, le problème, j'ai toujours le message d'erreur
Lân
samedi 4 février 2006 à 20:48:37 | Re : Probleme, aide moi svp!

julienbj

Réponse acceptée !

Il faut que tu définisse le destructeur de ta classe personne.

class personne
{
    private:
         chaine nom, prenom, adr, CP, ville;
    public:
        personne();
        ~personne(){};
        void saisir();
        void aff();
};


Vive le C
Tchao
Savon
samedi 4 février 2006 à 22:01:33 | Re : Probleme, aide moi svp!

lanbook


Merci beaucoup julienbj 
Lân


Cette discussion est classée dans : void, cout, cin, getline, strset


Répondre à ce message

Sujets en rapport avec ce message

prob avec cin.getline(); [ par yafuka ] salut!j''essai de rentrer des chaines de caracteres de la misere a boucler le cin.getline.ma fonction ajouteevoid book::Ajouter(){ cout cout cin.getline(str, 256) [ par ronandmcdonald ] Salut je voulais savoir comment cela se fess que je peux pas utiliser cin.getline dans une fonction que voila :bool RS232::Write_RS232(){DWORD dwWritt Question à la con sur un getline() [ par Killvador ] Salut tt le monde,G un petit problème:dans ce petit prog le début marche jusqu'a la getline() qu'on dirait que le prog l'a complétement zapé.(y passe cin.getline dans un Case : Marche pas !!! [ par Sixpion ] bonjour a tous !!on a un petit pb avec l'insertion de cin.getline dans des Case (voir code) il semblerai que le cin.getline fct bien dans le main mais J'ai un problème avec cin.getline!! [ par Chap71 ] Voici mon prgm:#pragma hdrstop#pragma argsused#include#include#include#includeusing namespace std; void main(void){ struct Planete Creation et ecriture dans un fichier en C++ [ par bjipowa ] Bonjour,voila je suis une noob en c++ mais je dois faire un prog pour mon BTS dans ce language, et je dois pour cela utiliser les fichiers.J'ai donc c celà n'enregistre pas [:(!],grrrr [ par oceane67 ] voilà, mon programme n'enregistre toujours pas, je ne sais pas pourquoi, surtout qu'il fait comme si c'etait le cas, je desepesere,voici mon programme pb de chaine avec espace ! [ par blinix123 ] #include #include #include struct cd{ char artiste [30]; char album [30]; char date [10]; char chansons [30];}; void remplissage ( Aide pour le CGI en C++ [ par coubiak ] Bonjour,j'ai un petit probleme concernant les scripts en Cgi.J'ai réalise un programme de test en C++:#include #include #include using namespace std;v Corection [ par Hellboy67 ] donc voila cette source est censé trier le tableau par ordre croissant mais il ne fait absolument rien je pense m'etre trompé mais ou ?#include using


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,484 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales