C++ String in const char* umwandeln

nachdem ich gerade beinahe daran verzweifelt wäre, schreib ichs jetzt mal auf. Immer wieder diese Probleme mit diesen dämlichen verschiedenen String Sorten…

Also es gibt den tollen String im manged C++ , der funktioniert so:

1
2
3
4
5
6
7
8
9
#include <string>;
#include <windows.h>;
using namespace std;
int main()
{
   string url;
   url = url + "start http://" + "haniman.de/";
   system(url.c_str()); //öffnet eine Internetseite direkt aus C++
}</windows.h></string>

Das is natürlich super, mit konkatenieren und alles, nur wenn man den String nun in C Funktionen benutzen möchte wird das ganze schwierig. Ich hab nach ewigem rumsuchen nun aber endlich das richtige gefunden:

Umwandeln in char*:

1
2
3
url.cStr();
oder
url.data();

Umwandlen in const char*:

1
2
char* buf;
buf = (char*)(LPCSTR) url.c_str();

Einen Kommentar schreiben