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(data9,'\n');
  
cout<<"INSERISCI TEMP. MIN"<<'\n';
  
cin.getline(min4'\n');
  
cout<<"INSERISCI TEMP. MAX"<<'\n';
  
cin.getline(max4'\n');
  
cout<<"INSERISCI ml PIOGGIA"<<'\n';
  
cin.getline(pioggia4'\n');
  
strcpy(a.datadata);
  
strcpy(a.maxmax);
  
strcpy(a.minmin);
  
strcpy(a.pioggiapioggia);
  
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?