Cách dùng cin.ignore() trong C++

Chào mọi người,

Em muốn hỏi là làm sao để em có thể input được biến a bên dưới ạ? Tại vì nếu em input một chuỗi dài hơn 10 kí tự thì em không nhập được biến a.

cin.getline(b, 10);
cin>>a;

Em thử dùng cin.ignore nhưng nó vẫn không được ạ.

cin.getline(b, 10);
cin.ignore();
cin>>a;

xài cin.ignore(100, '\n'); nha :V ignore tối đa 100 ký tự tới khi gặp \n thì dừng. ignore() thì nó chỉ ignore 1 ký tự, nhập ví dụ 15 ký tự thì còn thừa 6 ký tự gì đó nên ignore 1 ký tự là ko đủ :V Còn sợ nhập 200 ký tự thì ignore(100, '\n') cũng ko đủ thì xài cin.ignore(numeric_limits<streamsize>::max(), '\n'); thì nhập bao nhiêu cũng ignore hết được :V

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