Builder C++ : Conversion String- char *

Bonjour tout monde,

Mon problème est le suivant:

j’utilise dans mon programme (ecrit en builder c++) la commande fopen , son paramètre est déclaré char *ifname, lorsque je donne à ifname un nom de fichier, par exemple ifname=“image.bmp” , le progrmme marche très bien, mais pour donner la possiblité d’introduire le nom de fichier via l’interface graphique , je n’arrive pas à faire la conversion String - char *. Cette conversion est possible avec une boucle si la varible etait char (sans *) mais maheureusement dans ce cas le fopen ne l’accepte pas. Existe t il une fonction de conversion? ou un champ de saisie qui permet d’introduire directement une telle variable?

Vos conseils et astuces sont les bienvenus.
Merci beaucoup.

essaye de faire ifname.c_str(); :wink:

Je n’ai pas vraiement bien compris mais ce que je peux déja dire que c’est qu’il ne faut jamais faire


char * foo = "pouet";

mais :


char foo[] = "pouet";

ou mieux :


char * foo;

   foo = malloc(5);
   strncpy(foo,"pouet",5);

Ensuite, pour convertir un char * en string :


string foo2(foo);

tout simplement.

en fait karlkox je pense qu’il essaye de passer un string à fopen qui attend un char* … mais ptet j’ai mal compris :neutre:

Je pense que c’est toi qui a raison car je comprend vite mais faut m’expliquer longtemps :ane:

Merci beaucoup, ca marche avec : char* ifname = Edit1->Text.c_str();

Qu’est ce que je disais :MDR

[:yeoh]