[C / C ]检查输入字符串可以在C 为零 – 检查字符串进口在C 数量
Có nhiều cách kiểm tra tuy nhiên ở đây ta sử dụng hàm cin.fail()
#include <iostream> using namespace std; int main() { double a; cout<<"nHay nhap vao ki tu a"; cin>>a; if(cin.fail()) cout<<"n Bi loi roi"; else cout<<"nSo vua nhap vao la: "<<a; return 0; }
Ngoài ra cũng có thể dùng:
string line; getline(cin,line); if (atof(line.c_str()) || line == "0") cout<<endl<<atof(line.c_str()); else cout<<"loi";
向你致敬, mình có tham khảo cách viết của bạn. Mình đang tìm hiểu cách kiểm tra số nhập vào có đúng hay không ( tức là không được có chữ cái hoặc kí tự không hợp lệ.
– Khi mình dùng kiểu char để nhập thì lại không biết cách đổi từ char sang double.
– Tham khảo cách của bạn thì có một nhược điểm là nếu nhập: 123bc4 thì kết quả là 123. Có cách nào báo lỗi trường hợp này không?
Bên trên mình có kiểm tra cái fail() 您.
bạn đã xử lí được lỗi này chưa !!