Gå til innhold

[Løst] Problem med multifile-program i C++


Anbefalte innlegg

Hei!

 

Holder på med skoleprosjekt, der vi skal lage vårt første multifile-program, men når jeg kjører programmet får jeg en Break-error, når jeg kjører les_hotell() funksjonen. Feilen kommer på linjen "navn = new char[strlen(temp)+1];"

 

Noen som vet hvorfor dette skjer?

 

Har på følelsen at jeg ikke har tilgang til det som ligger under private i Hotell-klassen.

 

(Oppretter et globalt Hotell-objekt i Int Main)

 

Håper noen kan hjelpe!

 

//hotell.h
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
class Hotell  {
private:
char *navn,	  // hotellets navn
  *adresse,	 // hotellets besøksadresse
  *post,	  // hotellets postadresse
  *mail;	  // hotellets epost
string filnavn;	 // hotellets filnavn
int telefon,	 // hotellets telefonnummer
 fax,	  // hotellets faxnummer
 frokostpris,	// pris på frokost
 sengpris,	 // pris på ekstraseng??
 ant_fas;	 // antall fasiliteter hotellet har
// char* fasilitet[];	// array med navn på fasiliteter
// List* rom[singel, dobbel, suite];
public:
Hotell();
void les_hotell();
void skriv_hotell();

};

 

#include <fstream>
#include <iostream>
#include <cstring>
#include "hotell.h"

using namespace std;

void Hotell::les_hotell()  {
const int NVNLEN = 80;
char temp[NVNLEN];
cout << "Leser inn data om hotell!!\n";
ifstream inn("ARENA.DTA");
if (inn)  {
 inn.getline(temp, NVNLEN);
 navn = new char[strlen(temp)+1]; strcpy(navn, temp);
 inn.getline(temp, NVNLEN);
 mail = new char[strlen(temp)+1]; strcpy(epost, temp);
 inn.getline(temp, NVNLEN);
 adresse = new char[strlen(temp)+1]; strcpy(adresse, temp);
 inn >> telefon;
 inn >> fax;
 }
else
 cout << "Fant ikke filen!!";
}

Lenke til kommentar
Videoannonse
Annonse

Hotell klassen har tilgang til private medlemmer av hotell-klassen åpenbart.

Hva er feilmeldingen?

 

Feilmeldingen er

Unhandled exception at 0x00401125 in hotell_prosjekt.exe: 0xC0000005: Access violation writing location 0x00000000.
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...