questa è la porzione di codice che mi crea problemi:
Codice PHP:
int add (){
db a;
char data[9];
int num=0;
char min[5], max[5], pioggia[5];
ofstream fout;
fout.open("db.txt",ios::app);
cout<<"INSERISCI DATA"<<'\n';
cin.getline(data, 9,'\n');
cout<<"INSERISCI TEMP. MIN"<<'\n';
cin.getline(min, 4, '\n');
cout<<"INSERISCI TEMP. MAX"<<'\n';
cin.getline(max, 4, '\n');
cout<<"INSERISCI ml PIOGGIA"<<'\n';
cin.getline(pioggia, 4, '\n');
strcpy(a.data, data);
strcpy(a.max, max);
strcpy(a.min, min);
strcpy(a.pioggia, pioggia);
ins_coda(a);
fout<<a.data<<"|"<<a.min<<"|"<<a.max<<"|"<<a.pioggia<<"#"<<'\n';
fout.close();
return 0;
}
se in data inserisco un valore maggiore di 8 caratteri, es. 10 caratteri, i primi 8 vengono presi e mesi in data, gli altri 2 mi restano vaganti facendomi saltare i cin successivi e nei casi + pesanti mandandomi in loop tutto il programma.
come risolvo questo problema?