stringzuweisung in einer Listenstruktur



  • Hi alle!

    Ich weiß das ist eine total noob frage aber ich hab das mit den strings und den zeigern noch ned ganz gerafft 🙂

    also hier meine frage:

    #include <iostream>
    #include <string>
    using namespace std;
    
    struct TNewTest		// Struktur für die vorhandenen Useraccounts
    {
    
      string Value;
    
    };
    
    struct TNewTest *newvar;
    
    int main(void)
    {
        newvar -> Value = "test";
    
    	return 0;
    };
    

    mir gehts um die zuweisung des stringwertes an die string variable in der struktur. dabei stürzt das prog ab, ich vermute ´das ich da was falsch mache wegen den zeiger 😉
    kann mir jemand bitte sagen wie es richtig heißen muss das diese zuweisung geht 😃

    mfg
    Inferno



  • #include <iostream>
    #include <string>
    using namespace std;
    
    struct TNewTest        // Struktur für die vorhandenen Useraccounts
    {
    
      string Value;
    
    };
    
    struct TNewTest newvar;
    
    int main(void)
    {
        newvar.Value = "test";
    
        return 0;
    };
    


  • danke erstmal für die antwort aber ich brauche die variable der struktur als zeiger weil das eine doppelt verkettete liste werden soll, sorry hatte ich vergessen zu erwähnen, und hab auch den nachfolgerzeiger und vorgängerzeiger ned mit drin, sorry. also das sieht eigentlich so aus:

    #include <iostream>
    #include <string>
    using namespace std;
    
    struct TNewTest        // Struktur für die vorhandenen Useraccounts
    {
    
      string Value;
    
      struct TNewTest *N, *V;
    };
    
    struct TNewTest *newvar;
    
    int main(void)
    {
        newvar -> Value = "test";
    
        return 0;
    };
    


  • Dann so.

    #include <iostream>
    #include <string> 
    using namespace std; 
    
    struct TNewTest        // Struktur für die vorhandenen Useraccounts 
    { 
    
      string Value; 
    
      struct TNewTest *N, *V; 
    }; 
    
    struct TNewTest *newvar; 
    
    int main(void) 
    { 
        newvar=new TNewTest;
        newvar -> Value = "test";
        delete newvar;
        return 0; 
    };
    


  • hm mal sehen das muss ich dann mal zuhause testen mit dem new,
    ich hatte es vorher mit malloc gemacht.



  • struct und malloc ist C.
    class und new ist C++.



  • jo , hatte das mit dem new ned ganz hinbekommen deswegen habe ich c und c++ gemixt weil ich das mit dem malloc noch wußte *g*


Anmelden zum Antworten