Salve, ho scritto questo codice.
Se trovo la persona funziona bene
Se scrivo qualcosa casualmente Segmentation fault (core dumped)
Se non scrivo niente mi viene fuori: �F���k��F���������� -1452
Che devo fare?
codice:
#include <iostream>
#include <string.h>
#include <stdlib.h>
using namespace std;
int main(){
struct dati {
char* nome;
char* cognome;
short int eta;
};
dati dade[10];
char cerca[10];
//Dati di esempio
dade[0].nome= "Davide";
dade[0].cognome= "Cavallini";
dade[0].eta = 25;
dade[1].nome= "Elena";
dade[1].cognome= "Berti";
dade[1].eta = 23;
//
cout << "Cerca: ";
cin.getline(cerca,sizeof(cerca));
for(int a=0; sizeof(dade); a++){
if(strncmp(cerca,dade[a].nome, 4)==0 || strncmp(cerca,dade[a].cognome, 4)==0){
cout << dade[a].nome << " " << dade[a].cognome << " " <<dade[a].eta << endl;
return 0;
} }
cout << "Risultato non trovato" ;
}