Rumah >pembangunan bahagian belakang >C++ >`std::cin vs. std::cin.getline(): Bila hendak menggunakan Setiap untuk Input C?`

`std::cin vs. std::cin.getline(): Bila hendak menggunakan Setiap untuk Input C?`

Susan Sarandon
Susan Sarandonasal
2024-12-01 06:23:11349semak imbas

`std::cin vs. std::cin.getline(): When to Use Each for C   Input?`

Perbezaan Antara std::cin.getline() dan std::cin

Apabila bekerja dengan input dan output dalam C , ia adalah penting untuk memahami perbezaan antara std::cin dan std::cin.getline() fungsi.

std::cin: Input untuk Perkataan Tunggal dan Nombor

std::cin ialah aliran input yang boleh digunakan untuk membaca satu perkataan atau nombor daripada peranti input standard (biasanya papan kekunci).

std::cin.getline(): Input untuk Keseluruhan Lines

Sebaliknya, std::cin.getline() ialah kaedah yang boleh digunakan untuk membaca keseluruhan baris aksara daripada aliran input. Ini termasuk sebarang ruang, tanda baca atau aksara baris baharu sehingga penghujung baris (diwakili sebagai 'n').

Perbezaan Utama:

  1. Had Aksara: std::cin hanya akan membaca satu perkataan atau nombor, manakala std::cin.getline() boleh membaca berbilang aksara, termasuk keseluruhan baris.
  2. Watak Baris Baharu: std::cin berhenti membaca pada aksara baris baharu pertama, manakala std::cin .getline() termasuk baris baharu dalam rentetan.
  3. Penimbal: std::cin beroperasi pada penimbal, jadi sebarang aksara yang dimasukkan sebelum memanggilnya akan disimpan. std::cin.getline(), walau bagaimanapun, membaca terus daripada strim input, mengabaikan mana-mana aksara pra-simpan.

Contoh Penggunaan:

// Read a single word from the input
std::string word;
std::cin >> word;

// Read an entire line from the input
std::string line;
std::getline(std::cin, line);

Kesimpulan:

Bergantung pada senario, sama ada std::cin atau std::cin.getline() boleh sesuai. Jika anda perlu membaca satu perkataan atau nombor, std::cin adalah lebih cekap. Walau bagaimanapun, jika anda perlu menangkap keseluruhan baris input, termasuk ruang dan baris baharu, std::cin.getline() ialah pilihan pilihan.

Atas ialah kandungan terperinci `std::cin vs. std::cin.getline(): Bila hendak menggunakan Setiap untuk 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