Ergebnis 1 bis 10 von 10

Thema: 2 Mini Fragen C++

  1. #1

    2 Mini Fragen C++

    Hallo ,

    Ich baue gerade ein Kleines Spiel ^^

    nur habe ich gerade 2 Probleme die nett Lösen kann

    1,Wie Lösche ich nochmal alles was bsiher auf dem Bildschirm ausgegeben wurde (in Dos Fenster)

    2,Folgender Code macht immer Faxen -.-

    Bei Zahlen kann unentlich viele eingeben doch buchstaben nur 1nen sonst spaltet er das Wort und verteilt es auf alle Spieler oO?

    Code:
                       for(i=1;i<=spieler;i=i+1)
                       {
    
                          char Spielername_i ;
                          cout << "Name für den Spieler Nr. " << i << " Eingeben " << endl;
                          cin>> Spielername_i ;  
                                               
                       }
    Kann mir jemand erklähren ? Charist doch für Buchstaben gedacht -.-

    Mfg Dadie

  2. #2
    Ja, aber char kann auch nur einen einzigen Buchstaben aufnehmen. Um einen Spielernamen zu speichern musst du ein char-array oder gleich einen std::string benutzen.

    Und AFAIK kann man in DOS den Bildschirm nicht wirklich loeschen...

  3. #3
    Ja, char ist für Buchstaben gedacht. Für einen Einzigen Buchstaben (genauer: für Zeichen).
    Strings sind in C++ Array von chars. Alternativ kannst du auch mit dem Datentyp String arbeiten:
    Code:
    #include <string>
    #include <iostream>
    
    using namespace std;
    main()
    {
      string Spielername;
      cin >> Spielername;
      cout << Spielername;
    }
    Außerdem existieren Variablen nur in dem Block, in dem sie initialisiert wurden (und in untergeordneten Blöcken), also wird Spielername_i nach jedem Durchlauf der for-Schleife neu erstellt.

    Ach ja, die Variable heißt Spielername_i, nicht Spielername_1, Spielername_2 usw.

  4. #4
    Zitat Zitat von masterquest
    Ach ja, die Variable heißt Spielername_i, nicht Spielername_1, Spielername_2 usw.
    So etwas habe ich schon geahnt -.- wie speicher ich sie den _1 _2 usw. ab ? mit "" kann ixh nix machen das bringt nur errors -.-

  5. #5
    Statt Char-Arrays kann man auch noch auf die netten Char-Pointer zurückgreifen um nullterminierte Strings zu speichern..

    Was die Eingabe angeht, würde ich persönlich zu cin.getline() greifen, damit kriegst du die Eingabe direkt in ein Char-Array geliefert..

    Vielleicht solltest du mal ein grundlegendes C(++)-Tutorial durchackern, die Sprache ist in einigen Dingen recht eigenwillig..

    Zitat Zitat
    So etwas habe ich schon geahnt -.- wie speicher ich sie den _1 _2 usw. ab ? mit "" kann ixh nix machen das bringt nur errors -.-
    C++ ist kein PHP, schon mal was von Arrays gehört?

  6. #6
    Afaik gar nicht. C++ ist zum einen kompiliert und zum anderen älter als Php, da ist deutlich weniger Flexibilität drin.
    Du solltest dir mal klarmachen, dass C++ und Php zwei völlig unterschiedliche Dinge sind. Gleiche Syntax != gleiche/ähnliche Sprache

  7. #7
    Zitat Zitat von MagicMagor
    C++ ist kein PHP, schon mal was von Arrays gehört?
    Ja klarkenn ich Arrarys ich hätte es nur lieber mit jewals einer eigenen Variable gelöst -.-

  8. #8
    Hier mal die alte C Variante mit char arrays:
    Code:
    #include <iostream>
    using namespace std;
    
    struct spielername_struct
    {
        char name[100];
    }spielername[2];
    
    
    int main()
    {
        char tmp[100];
        
        for (int i = 0; i < 2; i++)
        {
            cout<<"Bitte den Spielername Nr. "<<i<<" eingeben: ";
            cin>>spielername[i].name;
        }
        
        for (int i = 0; i < 2; i++)
        {
            cout<<"Name Nr. "<<i<<" lautet: "<<spielername[i].name<<"\n";
        }
        
        char a;
        cin>>a;
        
        return 0;
    }
    Ist noch eine Structur mit reingebaut, um das Doppeldimensionieren zu verhindern. So lässt es sich imo leichter handlen als mit spielername[100][2].

  9. #9
    C++ und PHP sind in dem Sinne verwandt, da PHP urspünglich von Perl stammt und dieses wiederum u.A. von C abgeguckt wurde!

    Zitat Zitat
    C++ ist kein PHP, schon mal was von Arrays gehört?
    Folglich gibt es in PHP auch Arrays

  10. #10
    Zitat Zitat von dadie
    1,Wie Lösche ich nochmal alles was bsiher auf dem Bildschirm ausgegeben wurde (in Dos Fenster)
    Die Frage hab ich bei meinem ersten Post überlesen. Afair ging das mit dem DOS-Befehl cls (unter Linux heißt das clear; DOS bin ich mir eben nicht ganz sicher). Ein einfacher System-Call sollte demnach genügen:
    Code:
    #include <iostream>
    
    using namespace std;
    
    main(){
      cout << "blub";
      system("cls");
    }

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •