Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menangkap Watak Ruang dalam Strim Input C?

Bagaimana untuk Menangkap Watak Ruang dalam Strim Input C?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-29 02:19:09942semak imbas

How to Capture Space Characters in C   Input Streams?

Menangkap Aksara Ruang dalam C

Dalam C , strim cin melangkau aksara ruang putih (seperti ruang, tab dan baris baharu) secara lalai . Jika anda cuba membaca aksara ruang terus daripada input standard menggunakan cin, atur cara akan mengabaikannya.

Penyelesaian 1: Menggunakan noskipws

Untuk menukar tingkah laku ini, anda boleh menggunakan manipulator noskipws, yang melumpuhkan langkauan ruang kosong.

cin >> noskipws >> a[i];

Dengan manipulator ini, cin akan baca aksara ruang bersama-sama dengan aksara lain.

Penyelesaian 2: Menggunakan get

Sebagai alternatif, anda boleh menggunakan fungsi get untuk membaca aksara daripada strim input. Fungsi ini membolehkan anda menentukan penimbal yang mana aksara dibaca.

cin.get(a, n);

Dalam kes ini, get akan membaca sehingga n-1 aksara ke dalam tatasusunan a dan menambahkan aksara nol ( ) pada hujung tatasusunan. Ia akan berhenti membaca jika ia menemui aksara baris baharu (n) sebelum mencapai aksara n-1.

Dengan menggunakan sama ada noskipws atau get, anda boleh menangkap aksara ruang dengan berkesan daripada input standard. Pilihan antara dua kaedah bergantung pada keperluan khusus program anda.

Atas ialah kandungan terperinci Bagaimana untuk Menangkap Watak Ruang dalam Strim Input C?. 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