Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

C++ Kiến Thức cơ bản cần giúp đỡ

Đã tạo 10:47 07-04-2017 797 lượt xem 2 bình luận

Xin chào anh em. Anh em cho hỏi khi khai báo kiểu int thì khi nhập vào ký tự nó sẽ tự động dừng chương trình giờ em muốn nếu nhập ko phải từ (-2147483648 đến 2147483647) thì in ra kết thúc chương trình. Trường hợp này ko có điều kiện gì cụ thể chỉ đơn giản là nhập ko phải số nguyên thì báo nhập sai và in kết thúc chương trình. Làm như nào bây giờ?

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Giang đã bình luận 21:19 07-04-2017

Bạn có thể dùng try catch để bắt các trường hợp ngoại lệ.
vd:

try
{
   // code ở đây, vd: nhập vào 1 số
}catch(Exception e) // Exception là trường hợp ngoại lệ
{
   // nếu phát sinh lỗi thì nó sẽ chạy về đây
}
Híu đã bình luận 11:07 07-04-2017

1. Đơn giản nhất là dùng hàm kiểm tra xem nó có phải là số không : isdigit(giá trị);

- trả về:

0 : không phải số.

1: là số.

------------------------------------------------------
2. Giá trị nhập vào của cậu là 1 kí tự, hay có thể nhập vào 1 xâu?

- Nếu là 1 kí tự, thì cậu khai báo nhập vào kiểu char , sau đó so sánh nó với thứ tự trong bảng mã ASCII 49 <= char <= 57 thì là số.

- Nếu có thể nhập vào 1 xâu kiểu như abcshasdsdwd, 545dsds  thì ... theo ngu kiến của mình thì khai báo đầu vào kiểu string, xong dùng vòng lặp kiểm tra từng kí tự xem có phải số hay không ( cách kiểm tra như cái bên trên) nếu gặp 1 cái không phải số thì in ra và kết thúc :D 

Câu hỏi mới nhất