Lerne c++ bei schleifenende hilfe.



  • im voraus 😃



  • Ich würde prinzipiell einen vector<string> hernehmen, zu Beginn von einer Datei einlesen und am Ende damit die Datei überschreiben.

    Während das Programm läuft sind dann alle Zeilen im vector<string> gespeichert und du kannst sie ausgeben/ändern/löschen.



  • okay und wie gebe ich den vector den wert der in der zeile schon steht?



  • Einlesen und std::vector::push_back(std::string).



  • Besten dank. und für die die genervt sind von diesen "leichten" fragen

    können uns gerne mal in die küche stellen 😉 10 jahre Erfahrung in einen Bereich lassen dinge die für einen selber als Leichtigkeit existanz sind für andere doch schwieriger erscheinen.



  • DeepKey schrieb:

    10 jahre Erfahrung in einen Bereich lassen dinge die für einen selber als Leichtigkeit existanz sind für andere doch schwieriger erscheinen.

    Das ist prinzipiell zwar richtig, dennoch existiert genug Dokumentation fuer so ziemlich alles.

    Und grundsaetzlich gilt: docs lesen > rumprobieren > ohne probieren "nach hilfe schreien"



  • übe und lerne jetzt nicht erst ne Woche. will auch nicht kopieren und deswegen versuche ich mich an eigene Programme. wenn aber ein Problem nach längeren suchen nicht gelöst wird und das beinhaltet probieren, suche ich Hilfe .
    was soll man denn sonst machen wenn man es nicht versteht. sry hier sitzt kein prof. neben mir der mir meine Fragen beantwortet.

    habe es jetzt so das er mir eine Auflistung macht. nun will ich es nur noch auswählen und direkt im WebBrowser öffnen können und oder eine zeile löschen und aufrücken lassen.

    #include <string.h>
    #include <iostream>
    #include <string>
    #include <fstream>
    #include <vector>
    
    using namespace std;
    
    int main(void)
    {
        int ende = 1;
        do{
    
            		cout << "*****************************************************Willkommen*********************************************************\n"
    			<< " ************************************************Movie.Adress.Saver****************************************************\n"
    			<< "\n";
    
           	cin.sync();
    
            ifstream eingaben;
    		string zeile;
            int z = 1;
            vector <int > zeil (10);
        for (int z= 1 ; z < zeil.size(); z++){
          zeil [z] = z ;
     }
    
            eingaben.open("Adressen.txt");
    
        	if (eingaben.is_open()) {
    			cout << " Vorhanden Filme sind...\n"
                     << "\n";
         for (int z = 1 ; z < zeil.size (); z++){
            while (getline(eingaben, zeile)) {
             cout << zeil [z++] << ": "  << zeile << " " << std::endl;
    
    }
    			eingaben.close();
    }}
    
    		else {
    			cout << " *+$.Noch keine Filme vorhanden.$+*\n";
    			cout << "\n";
    }
                cout << "\n";
                cout << "                           #*'Eingabe: [Name]  (Adresse..https...) Enter nicht vergessen'*# ;) \n";
    
                fstream Adressen1;
    	      	Adressen1.open("Adressen.txt", ios::out | ios::app);
                string Adressen;
    	       	getline(cin, Adressen);
    		    Adressen1 << Adressen << endl;
    	     	Adressen1.close();
    
        cout <<"\n";
        cout << "weitere Adresse \t1 Ja \t2 Nein \n";
        cin >> ende;
        system ("cls");
    
    }while (ende ==1 ); 
    
         cout << "***********************************************Beehren sie uns bald wieder**********************************************\n"
                 "\n"
                 "?????...Taste feur beenden druecken.";
    
    		cin.sync();
    		cin.get();
    		return 0;
    }
    

    Falls einer eine Idee hat nimm ich sie gerne entgegen. Also bisher bin ich zufrieden weil es das macht was ich bisher wollte.

    Ps. Als blutiger Anfänger hab ich zu diesen Code erst 2 wirkliche Fragen gestellt 😉



  • Als blutiger Anfänger hab ich zu diesen Code erst 2 wirkliche Fragen gestellt

    Nenn es wie du willst, dein Geschwafel nervt!



  • DeepKey schrieb:

    Hello World
    so beginnen viele Programme hier
    meins nicht 😃

    Auch ich habe mich entschlossen eine Programiersprache zu lernen.
    c++ find ich echt bedienerfreundlich für einen null mit Computer zu tun gehabten.

    Ich habe mich viel belesen und versuche echt so viel wie möglich alleine hinzubekommen. Manchmal fehlt es halt am logischen anstoss.

    Jesses, was ein Blabla 🙄 😮



  • DeepKey, beachte nicht diese unregistrierten Deppen (aka DeepGay/NERV).

    PS: Du solltest deinen Code trotzdem besser formatieren...



  • Ich habe nur oberflächlich drüber geguckt, aber hier scheint mir ein Fehler zu sein:

    eingaben.open("Adressen.txt");
    
    //..
    
    for (int z = 1 ; z < zeil.size (); z++) // hier wird z inkrementiert
    {
        while (getline(eingaben, zeile))
        {
            cout << zeil [z++] << ": "  << zeile << " " << std::endl; // und hier auch
        }
    
        eingaben.close();
    }
    

    Die for-Schleife ist ziemlich sinnlos, weil sich alles in der while-Schleife abspielt.

    Den Vector mit den Zeilennummern kannst du dir im Prizip auch sparen, wenn du einfach die Indexvariable anzeigst.

    eingaben.open("Adressen.txt");
    
    int z = 1;
    
    while (getline(eingaben, zeile))
    {
        cout << z++ << ": "  << zeile << " " << std::endl;
    }
    
    eingaben.close();
    

Anmelden zum Antworten