Gå til innhold

Anbefalte innlegg

Sliter litt med en les_fra_fil funksjon..

 

Dette er funksjonen:

 

void les_fra_fil()  {
 ifstream inn("OBLIG_05.DTA");//  Åpner filen det skal leses fra.
 char buffer[STRLEN];	   //  Buffer for (om mulig) å lese neste linje.

 if (inn)  {				//  Filen ble funnet:
 inn.getline(buffer, STRLEN);  //  Henter (om mulig) 1.linje.
						 //  Mer å lese og fortsatt plass i arrayen:
 while (!inn.eof()  &&  ant_telefon < MAXTLF)  {
   ant_telefon++;		 //  Tar i bruk neste indeks/'skuff'.
						 //  Barne-objektet leser resten inn selv:
   telefon[ant_telefon].les_fra_fil(&inn, buffer);  
   inn.getline(buffer, STRLEN); //  Henter (om mulig) neste linje/post.
 }
 } else					 // Filen finnes ikke:
cout << "\nKlarer ikke å finne filen 'OBLIG_05.DTA'.";
}

 

Jeg får feilmeldingen:

 

(198) : error C2664: 'les_fra_fil' : cannot convert parameter 2 from 'char [60]' to 'int'

This conversion requires a reinterpret_cast, a C-style cast or function-style cast

 

STRLEN er en const int = 60.

 

Det er mulig jeg forklarer dårlig, så spør om dere ikke skjønner hva jeg mener.

Lenke til kommentar
Videoannonse
Annonse

Så vidt jeg kan se så ligger problemet med 2 parameterverdi i denne linjen:

telefon[ant_telefon].les_fra_fil(&inn, buffer);

 

les_fra_fil tar tydligvis inn en int som andre parameter, men du sender med en char array med 60 plasser.

 

Enten så må du konvertere buffer til en int, eller så må du skrive om les_fra_fil så den kan ta imot buffer direkte...

Lenke til kommentar

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...