begin process at 2012 05 29 20:37:48
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Problème avec les strings


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

Problème avec les strings

samedi 29 mai 2004 à 13:10:47 | Problème avec les strings

Elween

Bonjour

J'ai un programme qui tournait parfaitement lorsque j'utisais les char. J'ai voulu remplacé ces derniers par des string en n'omettant pas #include<string> J'ai eu quelque soucis à la compilation et j'ai trouvé sur des forum qu'il fallait rajouté : using namespace std;

Tout fonctionne bien qd je compile et que je créé l'exécutable, j'ai 0 erreurs, 0 warning mais l'executable plante et me met deux messages d'erreurs à la suite comme quoi l'exe a planté. Lorsque je fais Débogage il me met dans le fichier OUTPUT.C

J'utilise Visual C++ version du pack Visual Studio 6

Est-ce que c'est déjà arrivé à quelqu'un ou quelqu'un connait-il la solution de mon problème ?


Elween
samedi 29 mai 2004 à 14:32:43 | Re : Problème avec les strings

djl


montre le code complet, j'ai jamaiis eu de probleme avec std::string et vc++6.0

et puis ne compile pas en .C pour du c++ avec vc++
samedi 29 mai 2004 à 15:25:11 | Re : Problème avec les strings

Elween

Voivi le code complet en espérant ne rien avoir oublié

******************

// Fichier eleve.h definition de la classe Eleve

#ifndef _ELEV
#define _ELEV
#include<string>

using namespace std;

class Eleve
{
string nom; // nom de l'élève
float note; // note obtenue
public :
void init(string pnom, float pnote); // initialisation
string getNom(); // retourne le nom de l'élève
float getNote(); // retourne la note de l'élève

};


#endif

// Fichier Elevemethodes.cpp qui sert à obtenir le fichier Elevemethodes.obj décrivant les méthodes de la classe Eleve

#include"eleve.h"
#include<string>

using namespace std;

void Eleve::init(string pnom, float pnote)
{
nom=pnom;
note = pnote;
}

string Eleve::getNom()
{
return nom;
}

float Eleve::getNote()
{
return note;
}

// Fichier tabeleve.h définition de la classe TabEleves

#ifndef _TABELEV
#define _TABELEV

#include<vector>
#include"eleve.h"

using namespace std;

typedef vector<Eleve> Eleve_vector;

class TabEleves
{
Eleve_vector val; // les élèves mémorisés
public :
int getNb(); // retourne le nombre d'élèves mémorisés
void ajouter(Eleve ele); // ajoute un élève dans le tableau
Eleve valeur(int i); // retourne l'élève mémorisé à l'indice i
Eleve meilleur(); //retourne le meilleur élève mémorisé
Eleve moinsbon(); //retourne l'élève le moins bon mémorisé
float moyenne(); //retourne la moyenne des élèves mémorisés
int nbmoyenne(); //retourne le nombre d'élève ayant la moyenne ou plus



};


#endif

// Fichier tabelevemethode.cpp qui sert à obtenir le fichier tabelevemethode.obj décrivant les méthodes de la classe TabEleves

#include"eleve.h"
#include"tabeleve.h"

int TabEleves::getNb()
{
int nb;
nb = val.size();

return (nb);
}

void TabEleves::ajouter(Eleve ele)
{
int pos, i, nb;


val.resize(val.size()+1);

val[val.size()-1]=ele; // sentinelle

pos=0;

nb=val.size();

while (val[pos].getNote() < ele.getNote())
{
pos++;
}
if (pos = nb+1)
{
nb++; // ele est correctement placé
}
else
{
for (i=nb ; i=pos ;i=i-1)
{
val[i+1]=val[i];
}
val[pos]=ele;
nb++;
}
}


Eleve TabEleves::valeur(int i)
{

Eleve objele;

objele=val[i];

return(objele);
}

Eleve TabEleves::meilleur()
{
int nbeleve, indice, i;

float note;

float bnote;

nbeleve=val.size();

bnote=val[0].getNote();

indice=0;

for (i=1;i<=nbeleve;i++)
{
note=val[i].getNote();

if (note>bnote)
{
bnote=note;
indice=i;
}
}

return val[indice];
}

Eleve TabEleves::moinsbon()
{
int nbeleve, indice, i;

float note;

float mnote;

nbeleve=val.size();

mnote=val[0].getNote();

indice=0;

for (i=1;i<=nbeleve;i++)
{
note=val[i].getNote();

if (note<mnote)
{
mnote=note;
indice=i;
}
}

return val[indice];
}

float TabEleves::moyenne()
{
int i;

float totalnote, nbeleve;

float moy;

nbeleve=val.size();

totalnote=0;

for (i=0;i<=nbeleve;i++)
{
totalnote=totalnote + val[i].getNote();
}

moy = totalnote/nbeleve;

return moy;
}



int TabEleves::nbmoyenne()
{

Eleve objele;

int nbeleve, cpeleve, i;

nbeleve=val.size();

cpeleve=0;

for (i=0;i<=nbeleve;i++)
{
objele=val[i];

if (objele.getNote() >= moyenne())
{
cpeleve++;
}
}

return cpeleve;
}

//et enfin le fichier progeleve.cpp, progamme principal utilisant les objets des deux classes

// progelev.cpp : Defines the entry point for the application.
//

#include "stdafx.h"
#include"eleve.h"
#include"tabeleve.h"
#include"eleve.h"
#include<conio.h>
#include<string>

using namespace std;

void main()
{
string nom;

TabEleves t;
Eleve eleve1;
eleve1.init("Aurelie",13);
t.ajouter(eleve1);
printf("%s",eleve1.getNom());
getch();
}


Cette discussion est classée dans : problème, met, visual, erreurs, strings


Répondre à ce message

Sujets en rapport avec ce message

Prob grave avec Visual... [ par Nuage ] Voila, j'ai un grave problème avec le debug de Visual. Je fait un bête code source, avec une fonction pour créer un élement d'une pile, et une fonctio Problème lorsque que je met une variable dans AfxMessageBox(nom_variable); [ par Gulius ] Voila lorsque je met le nom d'un variable dans AfxMessageBox, et que je compile mon projet il n'y aucune erreur mais lorque je lance l'éxecutable, et migration Visual 6 -> Visual Studio.Net 2003 [ par balbeau ] Bonjour,je suis toujours plongé dans ma migration de projets développés sous Visual C++ 6 et je suis censé les re-compiler et les faire tourner sous V allegro [ par Palca_Ulem ] Bonjour, je sais qu'il y a eu pas mal de messages concernant allegro mais j'ai fais une recherche et je n'ai trouvé aucune solution à mon problème.J'a Visual C++ 2003 .NET [ par Logan ] Bonjour,j'ai un gros problème,je tente aujourd'hui de compiler un put* de mod Mule, pour pouvoir après le modifier (et ui, fo deja arriver à le compil Problème système avec Visual C++ 6 [ par CodeMercury ] Salut,J'ai installé Visual C++ 6 sur mon ordinateur, et depuis dés que je ne ferme pas un programme correctement, ou si je ferme le lecteur WMP quand Visual C++ 6.0 Console Handler [ par Steph115 ] Salut a tous,Je programme sur visual C++ en consolej'aimerais savoir si il est possible de mettre une console dans le systray j'ai trouve cette source Petit problème (tout simple pour vous) sur Visual C++ 7.... [ par jb60 ] Bonjour, je voulais vous demander une toute petite info...Dejà premièrement, je voudrais m'adresser à ceux qui connaissent un peu Visual C++, j'ai la [Visual C++]Problème avec SendMessage(.....GETTEXT,i,...) [ par goutbouyo ] J'ai juste un petit problème avec ça :SendMessage(hCtrl,LB_GETTEXT,i, (LPARAM)(LPCTSTR)chaine);En fait c'est pour obtenir les mots d'une liste ligne p Refresh() sur visual [ par HUSNET ] Je developpe sur C++ builder5 visual et je suis en train de faire un casse briquele problème c'est que ds mon timer je cré mes briques et à chaque foi


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
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,920 sec (4)

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