C++ Programm zum drucken der längste Wort der Zeichenfolge?

    #include <iostream>
#include <string>

using namespace std;

int main()
{
string s;
getline(cin , s) ; #input of string from user
int counter = 0;
int max_word = -1;
int len = s.length(); #length of string
string max = " ";
string counter_word = " ";

for (int i = 0; i < len; i++)
{
    if(s[i] != ' ')
        {
        counter++;
        }

    if(s[i] == ' ' || i == len - 1)
    {
        if(counter > max_word)
            {
            max_word = counter;
                        //handling end of string.
            if(i == len - 1)
                            max = s.substr(i + 1 - max_word, max_word); #sub string command that prints the longest word
                        else
                max = s.substr(i - max_word, max_word);
                }

    counter = 0;
    }
}
cout << max_word << " " << max << endl; #output
return 0;
}

Die aktuelle Ausgabe ist '4' auf die Eingabe der Zeichenfolge "das ist cool".
Wie bekomme ich es drucken '4 Dieser; Cool' ?
Auf es läuft in Linux über das terminal, es gibt mir die Fehlermeldung
"kündigen, genannt nach dem werfen einer Instanz von 'std::out_of_range' what(): basic_string::substr Aborted (core dumped) "

  • Wollen Sie die Ausgabe aller Wörter wuth die maximale Länge?
  • Ja, ich möchte mein Programm zu drucken, alle Worte mit der maximalen Länge der Zeichenkette.
  • Warum möchten Sie formatieren Sie den code wie diesem? Warum würden Sie nicht zumindest aufgeräumt es, bevor es zu zeigen Sie zu anderen Menschen? Warum würden Sie nicht zumindest ordentlich es vor und zeigt es anderen Menschen, damit Sie helfen können Sie es beheben??
  • Denn das würde zu lange dauern, und Sie bekommen eine Antwort, trotzdem, und, weil Lesen und schreiben sind sterben Fähigkeiten, die diese Tage, wie es scheint 🙁
  • Dies ist der Grund, warum ich wünschte, die Menschen wie Vlad würde nicht Antworten auf Fragen wie diese.
  • Profitieren Sie von der Lektüre eines C++ - style-guide (diese eine ist von google). Und wenn man über die Formatierung des Codes auf, SO hier.
  • Danke @franklin für die mir helfen 🙂 ich werde prüfen, ob aus

InformationsquelleAutor Kana_chan | 2016-03-01
Schreibe einen Kommentar