Loại bỏ kí tự lạ khi dùng cin

chào mọi người!! mình cũng mới học c++ thôi và có 1 câu hỏi mong mọi người giải đáp giúp.
đây là code của mình:
do
{
cout << “nhap so cua ban” << endl;
cin >> soBiMat;
if (soBiMat>soHienTai) // soHienTai duoc lay tu ham random
cout<<“Lon hon !\n”<<endl;
else if (soBiMat<soHienTai)
cout<<“Nho hon !\n”<<endl;
else
cout<<“day la so can tim !!!\n”<<endl;
} while (number != sobimat);
mình vướng ở chỗ cin>>number, tại chỗ này nếu nhập 1 số kèm với 1 vài kí tự thì vòng lặp sẽ chạy vô hạn, mong mọi người giúp chỉ mình cách loại bỏ kí tự không phải là số khi nhập vào

thay vì bạn nhập trực tiếp int soBiMat, bạn nhập string ahjhj gì đó, rồi viết phương thức để chuyển nó thành int soBiMat

thank b, đã tìm đc trên stack

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?