String in Char array



  • das gute php wie einfach war es doch mit strings zu arbeiten ... xDD naja

    ich möchte einen string in ein char array haben ich habe google benutz und die boardsuche kahm aber immer zu ihrgend welchen sachen die für mich nicht wirklich verständlich waren

    währe schön wen es ihrgend etwas unkompliziertes währe wie ...

    string kette = "Hallo";
    char ar[] = kette;
    


  • Wenn du den String in einem const char* (Zeiger auf unveränderliche Zeichenkette) haben willst, nimm c_str() . In einem char[size] (Array): Zeichen einzeln kopieren.

    std::string str("hallo");
    
    // 1) Zeiger
    const char* pointer = str.c_str();
    
    // 2) Array
    char array[6];
    *std::copy(str.begin(), str.end(), array) = '\0';
    

    Viel wichtiger: Warum brauchst du das?



  • Hier mal der Code um sowas zu machen

    // Wenn du nur lesend auf den char * zugreifen willst:
    s.c_str();
    
    // string in char kopieren:
    char *c_s=new char[s.length()];
    strcpy(c_s, s.c_str());
    // mache was mit char *
    delete[] c_s;
    


  • hmmz allso ganz ehrlich sry aber das is zu hoch für mich 😣



  • ich habe 2 strings die ich zu 1 char zusamenfasen mus weil meine funktion ein char erwartet als parameter



  • TomHalo schrieb:

    hmmz allso ganz ehrlich sry aber das is zu hoch für mich 😣

    Dann benutze doch std::string . Nicht ohne Grund hat C++ so eine komfortable und einfach zu benutzende Klasse eingeführt. C-Strings arten nun mal schnell in Frickeleien aus, besonders wenn man sich noch nicht gut mit der Sprache auskennt.



  • Oder lies dir das Kapitel C-Strings noch mal durch 🙂


Anmelden zum Antworten