Tja ska försöka göra ett program där man får mata in ett namn och personnummer i en array men när jag gör det på det här sättet (koden som är kommenterad bort //) så krashar programmet. När jag gör det på det nya sättet (den nuvarande koden) så krashar programmet när jag ska söka upp personnumret i slutet av programmet. (Det krashar inte om jag tar någon av personerna som redan är skapta). Någon som vet vad jag gör fel?
Kod:
#include <iostream>
using namespace std;
class Person
{
public:
char* name;
int personnummer;
void SetInfo(char* _name, int _personnummer)
{
name = _name;
personnummer = _personnummer;
}
};
int LinearSearch(Person* personArray, int key)
{
for (int i = 0; i < 11; i++)
{
if (personArray[i].personnummer == key)
return i;
}
return -1; //Personen hittades ej
}
int main()
{
int listsize;
int listnumber;
char* nameperson;
int personsnumber;
listsize = 11;
listnumber = 10;
//KOD SOM TOGS BORT FÖR LOOPEN DÄR SWITCH CASE 1 GÖR ATT MAN LÄGGER TILL NAMN-
//OCH PERSONNUMMER
//listsize = 10;
//listsize++;
//listnumber = 9;
//listnumber++;
char* Kalle;
nameperson = Kalle;
personsnumber = 930313;
//KOD SOM TOGS BORT SOM SKA VA HÄR PÅ NÅGOT SÄTT
//cout << "Skriv namnet du vill lägga till: ";
//cin >> nameperson;
//cout << "Skriv personens personnummer;
//cin >> personsnumber
Person myList[listsize];
myList[0].SetInfo("Ander", 220212);
myList[1].SetInfo("Bosse", 330313);
myList[2].SetInfo("Calle", 440414);
myList[3].SetInfo("Douglas", 550515);
myList[4].SetInfo("Erik", 660616);
myList[5].SetInfo("Fredrik", 770717);
myList[6].SetInfo("Gustaf", 880818);
myList[7].SetInfo("Henrik", 880919);
myList[8].SetInfo("Isak", 881020);
myList[9].SetInfo("John", 920212);
myList[listnumber].SetInfo(nameperson, personsnumber);
int number;
cout << " Skriv personnummret p\x86 personen du s\x94ker: ";
cin >> number;
int index = LinearSearch(myList, number);
if(index == -1)
cout << " Personen hittades ej! ";
else
cout << " Personen du s\x94ker heter " << myList[index].name << " och finns p\x86 index " << index;
cin.get();
return 0;
}
__________________
Senast redigerad av gholiat 2017-07-26 kl. 00:50.
Senast redigerad av gholiat 2017-07-26 kl. 00:50.