Problème avec C++ 2005

drnicholas001 Messages postés 37 Date d'inscription vendredi 10 septembre 2004 Statut Membre Dernière intervention 21 avril 2007 - 18 oct. 2006 à 19:41
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 - 23 oct. 2006 à 09:10
Salut, j'ai une problème avec C++ 2005 express edition. J'ai le code suivant :

#include <cstdlib>
#include
#include <string.h>


using namespace std;


int main(int argc, char *argv[])
{
    string lol = "lolllool";


    cout << "ahahahah" << endl;
    system("PAUSE");
    return 0;
}

Ce code marche très bien avec VC++ 6, avec DevC++ mais pas en VC++ 2005... j'ai lerreur suivante :



main.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl std::operator<<<char,struct std::char_traits<char> >(class std::basic_ostream<char,struct std::char_traits<char> > &,char const *)" (__imp_??$?6DU?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z) referenced in function _main




J'ai essayé de loader les library de VC++ 6 dans VC++ 2005 mais sans grand succès, j'ai juste d'autres erreurs. J'aimerais utiliser VC++ 2005 parce que je suis débutant alors tant qu'à commencer le C++, aussi bien commencer en neuf, mais là ça marche pas trop...

4 réponses

SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
18 oct. 2006 à 20:49
0
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
19 oct. 2006 à 10:07
Et si tu change le #include <string.h> en #include <string>, ce ne serait pas mieux?

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
0
drnicholas001 Messages postés 37 Date d'inscription vendredi 10 septembre 2004 Statut Membre Dernière intervention 21 avril 2007
23 oct. 2006 à 00:18
Salut,
désolé du temps que je prend à répondre. Merci beaucoup pour vos conseils, mais sa na toujours pas marché... Le petit code que j'ai poster dans mon premier message donne maintenant l'erreur suivante :
LINK : warning LNK4098: defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library

Que je load <string.h> ou <string> ou les 2, sa ne change rien... Avez-vous une idée de ce qui se passe?
0
BunoCS Messages postés 15475 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 23 avril 2024 103
23 oct. 2006 à 09:10
Coucou,
Comme le message te l'indique - je te l'accorde, c'est pas très explicite - le linker a un problème avec la lib par défaut libcmt. Dans les options de ton projet tu as un endroit (je ne sais plus où de mémoire) où tu lui dis d'ignorer les lib que tu lui spécifie.
Ou bien, toujours dans les options de projet, tu ne compile pas avec les bonnes options de runtime (Mtultithread, Single Thread,...)

Pour info, on peut trouver des explications au code d'erreur avec MSDN. Voici la page LNK4098

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
0
Rejoignez-nous