Strings verknüpfen?



  • Hallo,

    ich möchte zwei Strings miteinander verküpfen:
    Ein kelines Beispiel:

    // Erster String Zeiger
    System::String* test1 = S"Hallo ";
    // Zweiter String Zeiger
    System::String* test2 = S"Mein Name";
    
    // Jetzt sollen beide verknüpft werden und z.B. ausgegeben werden
    MessageBox::Show(test1+test2 oder test1.test2 (ich habe keine Ahnung), S"Test Ausgabe");
    

    Ich bin noch Anfänger. Bei C# werden Strings mit "+" Addiert und bei PHP mit ".", aber bei C++...

    Vielen Dank im Vorraus!



  • #include <windows.h>
    
    int WINAPI
    WinMain(HINSTANCE hInst, HINSTANCE hPrev, LPSTR pszCmdLine, int iCmdShow)
    {
    char String1[13];
    char String2[] = "Hallo ";
    char String3[] = "Welt!";
    [b]strcpy(String1, String2);
    strcat(String1, String3);[/b]
    MessageBox(NULL, String1, "strcat und strcpy", MB_OK);
    return(0);
    }
    

    Die Funktion strcpy kopiert einen String.
    Hier wird String2 in String1 kopiert.

    Mit der Funktion strcat können zwei Strings miteinander Verbunden werden.
    In diesem Fall wird String3 an String1 angehängt.



  • Mit normalen String Variablen funktioniert das ja, aber bei mir sind es ja Zeiger (String*). Ich habe es schon mit einer Adressübergabe probiert funktioniert aber auch nicht. Ich brauche diese String - Zeiger für alle möglichen Funktionen in .NET.



  • Was isn System::String überhaupt?? c++ std::string kannst du mit + verknüpfen



  • Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum WinAPI in das Forum C++/CLI mit .NET verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Unter managed C++ geht es leide rnur mittels "Concat"... unter C++/CLI geht es dann aber mittels "+":

    System::String *s1 = S"Hallo";
      System::String *s2 = S" Welt";
      System::String *s = System::String::Concat(s1, s2);
    


  • Vielen Dank,
    genau das habe ich gebraucht.


Log in to reply