Probleme bei Beispiel-Programm



  • Hey,

    ich habe gerade mit C++ angefangen und versuch mich gerade einzuarbeiten.
    Könnte mir vielleicht jemand die markierten Zeilen erklären? Also was genau sie bewirken? Mir ist schon bewusst, wie For-schleifen funktionieren und das diese beiden Zeilen zum Durchzählen gedacht sind. Aber was davon macht genau was?

    [code="cpp"]#include <iostream>

    using namespace std;

    int main()
    {
    char zeile[100] =
    "Dies ist ein Text aus mi Nacht.";
    int worte[20];
    int anzahlWorte;

    worte[0]=0;
    anzahlWorte=1;
    for (int i=0; zeile[i] != '\0'; i = i + 1)
    if (zeile[i]==' ')
    {
    zeile[i]='\0';
    worte[anzahlWorte]=i+1;
    anzahlWorte=anzahlWorte+1;

    }

    for (int i=0; i<anzahlWorte; i++)
    {
    cout << "Ein Wort: ";
    for (int j=worte[i]; zeile[j] != '\0'; j = j + 1)
    cout << zeile[j];
    cout << endl;
    }
    }
    [code="cpp"][/code][/code]

    Lg,
    Blaize



  • ich probiers mal 🙂

    worte[anzahlWorte]=i+1;

    im worte-Array wird an der Stelle anzahlWorte der Wert i, um eins inkrementiert zugewiesen

    anzahlWorte=anzahlWorte+1;

    die Variable anzahlWorte wird um 1 inkrementiert

    und jetzt?



  • Doch so einfach...

    Also seh ich das richtig, dass die ganze Schleife nur dazu da ist, die Zeichen einzeln zu speichern?

    Danke schonmal ;-)Ich weiß, die Frage ist etwas seltsam. Will es eigentlich nur richtig nachvollziehen können und konnte mir nicht vorstellen, dass es wirklich so simpel ist...


Log in to reply