Salut à tous![]()
Quelqu'un pourrait-il m'expliquer ce que signifient ces deux lignes de codes :
-char* buffer=(cher*)malloc(256);
-#pragma comment(lib,"libmysql.lib");
Merci bp![]()
Salut à tous![]()
Quelqu'un pourrait-il m'expliquer ce que signifient ces deux lignes de codes :
-char* buffer=(cher*)malloc(256);
-#pragma comment(lib,"libmysql.lib");
Merci bp![]()
- Déclaration d'un pointeur sur char et allocation de type "Langage C". Normalement en C++, on n'utilise plus malloc().
- Directive de compilation spécifique à Microsoft (et aussi à Borland, je crois) qui signifie qu'à l'édition de lien, il faudra lier avec la bibliothèque statique libmysql.lib (c'est un raccourci plutôt que de le mettre dans les options du projet, mais ce n'est pas portable).
Edit :bolhrak !
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Cela signifie que tu alloues un buffer de char, de 256 octets. malloc te retournant de la mémoire brute (void*), il est nécessaire de sous-caster. C'est de la syntaxe C, je te conseille vivement d'utiliser la suivante à la place :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 char* buffer = (char*)malloc(256);
La ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 char* buffer = new char[256];
donne une option de linkage à ton linker, ici il s'agit de lier avec la librairie libmysql.lib.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2#pragma comment(lib,"libmysql.lib");
EDIT : grillé par Médinoc :p
Partager