Rumah >pembangunan bahagian belakang >C++ >Mengapakah `getline()` Menyebabkan Kelewatan Input Apabila Digunakan Berulang kali?

Mengapakah `getline()` Menyebabkan Kelewatan Input Apabila Digunakan Berulang kali?

Patricia Arquette
Patricia Arquetteasal
2024-11-11 17:57:03269semak imbas

Why Does `getline()` Cause Input Delay When Used Repeatedly?

getline() Menghentikan Kelewatan Input Apabila Dipanggil Berulangkali

Apabila bekerja dengan input pengguna, percanggahan boleh timbul antara penggunaan getline() beberapa kali. Isu ini menghalang pengguna daripada memasukkan input yang sah, menjadikan mereka keliru.

Dalam kod yang disediakan, getline() digunakan bersama operator >>. Sementara >> mengabaikan ruang kosong terkemuka, ia gagal menyerap aksara 'n' yang tertinggal. Akibatnya, apabila getline() digunakan selepas >>, ia berkelakuan di luar jangkaan.

Untuk menyelesaikan isu ini, adalah penting untuk memilih kaedah input tunggal dan mematuhinya sepanjang program. Untuk kes di mana nombor terlibat, gunakan operator >> semata-mata. Walau bagaimanapun, apabila berurusan dengan rentetan atau campuran jenis data, kekalkan getline() dan ekstrak nombor yang diperlukan daripada rentetan input.

Berikut ialah pelarasan pada kod yang hanya menggunakan getline():

Atas ialah kandungan terperinci Mengapakah `getline()` Menyebabkan Kelewatan Input Apabila Digunakan Berulang kali?. 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