cin.get Fehlermeldung: Konvertierung nicht möglich



  • Hi,

    vorerst mal der Quellcode, das ganze ist natürlich in der main-Funktion und <iostream> wird eingebunden. Namespace std wird verwendet (using namespace std;)

    struct S_Spieler
    {
    	int Energie;
    	char Name[30];
    };
    
    S_Spieler Spieler1;
    
    cout << "Name des ersten Spielers: ";
    cin.get (Spieler1.Name, 29);
    
    cout << "Energie des ersten Spielers: ";
    cin.get (Spieler1.Energie);
    
    cin.ignore ();
    

    Ich bekomme beim Kompilieren folgende Fehlermeldung:

    Fehler	1	error C2664: 'std::basic_istream<_Elem,_Traits> &std::basic_istream<_Elem,_Traits>::get(_Elem &)': Konvertierung des Parameters 1 von 'int' in 'char &' nicht möglich	c:\dokumente und einstellungen\hp_besitzer\eigene dateien\visual studio 2005\projects\projekt-aufgaben\projekt-aufgaben\main.cpp	(Zeile 20m bzw in dem Fall Zeile 13)
    


  • get() wird zum Einlesen von Zeichen und Zeichenketten (char-Array) verwendet, nicht für int-Werte. Letztere kannst du mit dem normalen Eingabe-Operator einlesen ([i]cin>>Spieler1.Energie;[/c]).



  • Oh, na dann.
    Danke (ging ja flott!) 😃



  • Hmm guck dir, wenn du mal Zeit hast, std::string, operator-Überladung usw. an!


Anmelden zum Antworten