Bagaimana untuk Memastikan Pengesahan Input Berangka dalam C?

Patricia Arquette
Lepaskan: 2024-11-15 21:13:02
asal
554 orang telah melayarinya

How to Ensure Numeric Input Validation in C  ?

Memastikan Pengesahan Input Numerik dalam C

Mengesahkan input pengguna untuk memastikan ketepatan angka boleh mencabar dalam C . Untuk menangani isu ini, program dicari yang menerima input integer sambil menamatkan jika tiada input diberikan.

Kaedah:

Untuk mengesahkan input angka dan mengendalikan input kosong, pendekatan berikut disyorkan:

int n;
cin >> n;
if (!cin) // or if(cin.fail())
{
    // No input or invalid input
    cin.clear(); // Reset failbit
    cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); // Skip bad input
    cout << "Invalid input. Please enter an integer: "; // Request reinput
}
Salin selepas log masuk

Penjelasan:

  • Apabila cin menemui input tidak sah (cth., aksara bukan angka), ia menetapkan failbit bendera.
  • cin.clear() menetapkan semula failbit dan membenarkan atur cara diteruskan.
  • cin.ignore() membuang penimbal input yang tinggal untuk mengelakkan ralat input selanjutnya.
  • Mesej dipaparkan meminta pengguna memasukkan semula integer.

Dengan terus mengesahkan input dan mengendalikan kes input kosong, kaedah ini memastikan kefungsian program yang betul dalam mengendalikan input integer.

Atas ialah kandungan terperinci Bagaimana untuk Memastikan Pengesahan Input Berangka dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan