code not working after first loop for entering name but getting input and output for rollno. i think it's a problem with the cin.getline part. any help would be appreciated.
#include<iostream>
#include<fstream>
using namespace std;
class lmao {
    char name[50];
    char rollno;
public:
    void display(void);
    void input(void);
};
void lmao::input(){
    cout<<"Enter name: \n";
    cin.getline(name,50);
    cout<<"Enter roll no.: \n";
    cin>>rollno;
    cout<<"\n";
}
void lmao::display(){
    cout<<"The name is: "<<name<<"\n";
    cout<<"The roll no. is: "<<rollno<<"\n";
}
int main(){
    lmao lol[3];
    ofstream fout;
    fout.open("cuz.txt",ios::in);
    for(int i=0;i<3;i++){
        lol[i].input();
        fout.write((char*)&lol[i],sizeof(lol[i]));
    }
    fout.seekp(0);
    fout.close();
    cout<<"Contents are: \n";
    ifstream fin;
    fin.open("cuz.txt", ios::in);
    for(int i=0;i<3;i++){
        fin.read((char*)&lol[i],sizeof(lol[i]));
        lol[i].display();
    }
    fin.close();
    return 0;
}
 
    