anzahl der Buchstaben in Wörtern lesen.

DennisFoc98

Grünschnabel
Hallo, Leute. Ich versuche die Buchstaben der Wörter zu zählen. Wenn ich jetzt z.B cin>>Wort; dann was eingeben zählt er das. Aber sobald ich dann leerzeichen drücke und noch ein Wort eingebe, beachtet er dieses Wort garnicht mehr, er zählt immer nur die erste Zeichenkette. Wie mache ich das, dass die Wörter auch nach dem Leerzeichen gezählt werden?
 
Wie sieht denn dein aktueller Quellcode aus? Vielleicht können wir dann was sagen.
 
C++:
#include <iostream>
using namespace std;



int main(void)
{
    string satz;


    cin>>satz;

    int counter=0;


    for(int x=0;x<=satz.length()-1;x++)
    {

        counter++;
    }

    cout<<counter<<endl;
}

Ich will dass er auch nach den Leertasten weiterzählt, vielleicht die leertaste noch mitzählt.
 

Anhänge

  • 1111.PNG
    1111.PNG
    11,2 KB · Aufrufe: 1
Wie gut ist dein englisch? --> String.size() returns incorrect number if there is space in the string
That's because your

cin >> input;

only reads up to the first whitespace character.

Übersetzung:
"Weil dein cin >> Satz; nur bis zum ersten Whitespace-Zeichen einliest"
Und ein Leerzeichen ist ein Whitespace-Zeichen
Richtig:
C++:
#include <iostream>
using namespace std;

int main(void)
{
    string satz;
    GetLine(cin, satz);
    int counter=0;
    for(int x=0;x<=satz.length()-1;x++)
    {
        counter++;
    }
    cout<<counter<<endl;
}
Und in dem Fall brauchst du keine Counter-Variable, sondern kannst direkt mit "Length" auslesen
 
Zurück