tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
372
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    partitionist partitionist ist offline Mitglied Brokat
    Registriert seit
    Mar 2005
    Ort
    HKEY_LOCAL_MACHINE\S oftware\Microsoft\Wi ndows\CurrentVersion \Run
    Beiträge
    476
    SO ich hab alles ausprobiert, komme aber nicht dahinter, also meine Frage: Was muss ich verändern, dass wenn ich Enter drücke die Pfeile wieder auftauchen und keine leere Zeile.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    
      #include <string>
      #include <iostream>
      #include <stdlib.h>
      
      #define EXIT "exit"
      
      using namespace std;
      
      void Pfeil()
      {
        cout << ">> ";
      }
      
      int main()
      {
        string Input;
      
        do
        {
      
            Pfeil();
            cin >> Input;
      
            if(Input == "test")
            {
                cout << "TEST" << endl << endl;
            }
      
            else if(Input == LEERE EINGABE)
            {
                Pfeil();
            }
            ........
      
        }while(Input != EXIT);
      
      
      return 0;
      }
     

  2. #2
    Registriert seit
    Apr 2002
    Ort
    Delmenhorst (Niedersachsen)
    Beiträge
    3.567
    moin


    cin eignet sich nciht um nur ein Enter einzulesen.


    mfg
    umbrasaxum
     

  3. #3
    partitionist partitionist ist offline Mitglied Brokat
    Registriert seit
    Mar 2005
    Ort
    HKEY_LOCAL_MACHINE\S oftware\Microsoft\Wi ndows\CurrentVersion \Run
    Beiträge
    476
    Kannst du mir an meinem Beispiel zeigen wie es geht
     

  4. #4
    partitionist partitionist ist offline Mitglied Brokat
    Registriert seit
    Mar 2005
    Ort
    HKEY_LOCAL_MACHINE\S oftware\Microsoft\Wi ndows\CurrentVersion \Run
    Beiträge
    476
    Ich möchte es so wie bei CMD machen, wenn man nichts eingibt und Enter drückt wird der Pfad wieder ausgegeben und das will ich in meinem Programm auch machen nur ich weiß nicht wie.
    Bitte Helfen
     

  5. #5
    Registriert seit
    Apr 2002
    Ort
    Delmenhorst (Niedersachsen)
    Beiträge
    3.567
    moin


    Hab dir das jetzt mal so geändert, wie ich denke das du es möchtest:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    
    #include <string>
    #include <iostream>
    #include <stdlib.h>
     
    #define EXIT "exit"
     
    using namespace std;
     
    void Pfeil()
    {
        cout << ">> ";
    }
     
    int main()
    {
        string Input;
        char dummy;
     
        Pfeil();
     
        do
        {
            cin.get(dummy);
            if(dummy != '\n')
            {
                            cin>> Input;
                Input.insert(0, dummy);
            }
     
            if(Input == "test")
            {
                cout << "TEST" << endl << endl;
            }
     
            if(Input.length() == NULL)
            {
                Pfeil();
            }
     
            if(Input == "EXIT")
                break;
     
            //Nötig!
            dummy = '\0';
            Input.clear();
        }
        while(1);
     
        return 0;
    }


    mfg
    umbrasaxum
     

  6. #6
    partitionist partitionist ist offline Mitglied Brokat
    Registriert seit
    Mar 2005
    Ort
    HKEY_LOCAL_MACHINE\S oftware\Microsoft\Wi ndows\CurrentVersion \Run
    Beiträge
    476
    Ok also es geht nur wenn ich erase() mir clear() ersetzte da der Compiler mekert wegen:
    'clear' : Ist kein Element von 'basic_string<char,struct std::char_traits<char>,class std::allocator<char>

    Ist das ein Unterschied erase(), clear() und funktioniert es bei dir mit clear()?
     

  7. #7
    Registriert seit
    Apr 2002
    Ort
    Delmenhorst (Niedersachsen)
    Beiträge
    3.567
    moin


    Welchen Compiler benutzt du?


    mfg
    umbrasaxum
     

  8. #8
    partitionist partitionist ist offline Mitglied Brokat
    Registriert seit
    Mar 2005
    Ort
    HKEY_LOCAL_MACHINE\S oftware\Microsoft\Wi ndows\CurrentVersion \Run
    Beiträge
    476
    MSVC++ 6.

    Wieso werden die Pfeile nicht ausgegeben, wenn ich nur ein Buchstabe eingebe.
     

  9. #9
    Registriert seit
    Apr 2002
    Ort
    Delmenhorst (Niedersachsen)
    Beiträge
    3.567
    moin


    Statt clear nimm
    Code :
    1
    
    Input.eraese(Input.begin, Input.end);
    sollte gehen.


    mfg
    umbrasaxum
     

  10. #10
    partitionist partitionist ist offline Mitglied Brokat
    Registriert seit
    Mar 2005
    Ort
    HKEY_LOCAL_MACHINE\S oftware\Microsoft\Wi ndows\CurrentVersion \Run
    Beiträge
    476
    THX aber es reicht auch Input.erase(), aber zu meiner Frage: Wenn ich ein Buchstabe eingebe werden die Pfeile nicht ausgegeben woran liegt das
     

  11. #11
    Registriert seit
    Apr 2002
    Ort
    Delmenhorst (Niedersachsen)
    Beiträge
    3.567
    moin


    An dem Vergleich den ich da angestellt hab.
    Vielleicht wolltest du eine Kombination aus else if benutzen um die Befehle zu verarbeiten, statt if(Input.length == NULL)......


    mfg
    umbrasaxum
     

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 26.05.10, 15:44
  2. [Batch] HILFE benötigt ...Eingabe und copy to eingabe
    Von Askin im Forum Sonstige Sprachen
    Antworten: 3
    Letzter Beitrag: 03.03.10, 11:12
  3. Hilfe zur Eingabe über Konsole
    Von thomasjung1 im Forum Java Grundlagen
    Antworten: 6
    Letzter Beitrag: 05.08.09, 12:29
  4. Hilfe für einen Anfänger: Nur Ganz-Zahlige Eingabe im Textfeld
    Von Lautsprecher im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 12.10.05, 11:53
  5. Antworten: 6
    Letzter Beitrag: 14.04.05, 23:31