typhoun
Messages postés21Date d'inscriptionjeudi 1 juillet 2004StatutMembreDernière intervention31 août 2006
-
22 mars 2005 à 09:36
Kurul1
Messages postés28Date d'inscriptionmardi 29 avril 2003StatutMembreDernière intervention15 janvier 2016
-
22 mars 2005 à 14:32
je voudrai mettre le texte d'une textbox dans un char mais sa me met une erreur.
char* data;
data = (char*) malloc(15);
data = this->textBox1->Text;
et l'erreur est:
cannot convert from 'System::String_gc*' to 'char*'
Kurul1
Messages postés28Date d'inscriptionmardi 29 avril 2003StatutMembreDernière intervention15 janvier 2016 22 mars 2005 à 10:31
Tu n'as pas précisé sous quoi tu développe.
Si tu développe en C++ Builder, il est normal que tu es une erreur car l'élément Text est de type AnsiString, et il n'existe pas de transtypage char(AnsiString Variable). par contre, il existe une fonction pour la conversion c_str().
il te sufit donc de mettre
data = this->TextBox1->Text.c_str();
ymca2003
Messages postés2070Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 3 juillet 20067 22 mars 2005 à 11:30
Dans ce cas la c'est strcpy qu'il faut utiliser :
strcpy(data, this->TextBox1->Text.c_str());
Par contre le 'System::String_gc' me parrait bizarre, tu ferais pas du C++ managé par hazard ? auquel cas la conversion c_str() n'est sans doute pas possible.
ymca2003
Messages postés2070Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 3 juillet 20067 22 mars 2005 à 11:47
Du vrai .Net ou c'est parce que tu t'es trompé dans les options du projet.
Avec Visual C++ .Net on peut faire du C++ standard et du C++ managé (pour le framework .net). Dans ce cas, la gestion des chaînes de caractères est plus délicate et je ne la maitrise pas. Le plus simple est alors d'utiliser des String plutôt que des char* pour manipuler des chaînes de caractères.
Vous n’avez pas trouvé la réponse que vous recherchez ?