Gå til innhold

Hva er galt med koden? (tull med vektorlengde)


Anbefalte innlegg

Driver å lærer meg c++ og har fått i "oppgave" å skrive ut linjene i en fil fra siste til første linje. Jeg vet at det blir noe tull i for-løkken, og det virker hvis jeg setter variabel "i" til linjeantallet. Ergo: Det må være noe tull med lines.size() som får løkken til å skrive ut noe som får programmet til å kræsje.

 

#include <string>
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

int main() {
vector<string> linjer;
ifstream inndata("vektor.cpp");
string linje;
 
 while(getline(inndata, linje)){
   linjer.push_back(linje); }

cout << "Størrelsen på vektoren: " << linjer.size() << endl << " Trykk en tast"
<< " for at programmet skal henge seg...";
cin.get();

 for(int i = linjer.size(); i > 0; i--)
   cout << i << ": " << linjer[i] << endl;

cin.get();
cin.get();
return 0;
} 

Dette er en av oppgavene i guiden "Thinking in C++", for de som måtte lure :-)

Endret av Manuel
Lenke til kommentar
Videoannonse
Annonse

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...