Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengesahkan Input Numerik dalam C dengan Berkesan?

Bagaimana untuk Mengesahkan Input Numerik dalam C dengan Berkesan?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-19 15:22:02516semak imbas

How to Validate Numeric Input in C   Effectively?

Mengesahkan Input Numerik dalam C

Mengesahkan input pengguna untuk memastikan ia mematuhi jenis data tertentu adalah penting dalam program kemasukan data. Dalam C , satu cabaran biasa ialah mengesahkan bahawa input berada dalam julat integer.

Pendekatan semasa anda untuk pengesahan input menggunakan gelung sementara untuk mengulangi aksara untuk menyemak sama ada ia berangka tidak lengkap. Walau bagaimanapun, penyelesaiannya terletak pada penggunaan keupayaan pengendalian ralat aliran input (cin).

Apabila cin menemui input tidak sah, ia menetapkan bendera failbit. Dengan menggunakan bendera ini, anda boleh mengikuti langkah berikut:

  1. Semak sama ada cin mengalami ralat menggunakan cin.fail() atau jika (!cin).
  2. Jika terdapat ralat, kosongkan failbit menggunakan cin.clear().
  3. Buang input yang tidak sah dengan menggunakan cin.ignore(std::numeric_limits::max(), 'n') untuk membaca dan membuang semua aksara sehingga aksara baris baharu.
  4. Gesa pengguna untuk memasukkan semula integer yang sah.

Dengan menangkap dan mengendalikan keadaan ralat cin, anda boleh memastikan bahawa atur cara terus berjalan dengan jayanya, walaupun apabila pengguna memasukkan input tidak sah. Pendekatan ini membolehkan pengesahan data yang lebih mantap dan mesra pengguna dalam C .

Atas ialah kandungan terperinci Bagaimana untuk Mengesahkan Input Numerik dalam C dengan Berkesan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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