C ++ wcin - C ++ Standard Library

Objek wcin dalam C ++ adalah objek dari kelas wistream. Ini digunakan untuk menerima input dari perangkat input standar yaitu keyboard. Ini terkait dengan aliran input C standar stdin.

Perbedaan antara wcin dan cin

cinpengguna char(karakter sempit) sebagai tipe karakter. Ini dapat digunakan untuk karakter ASCII dan ANSI.

Untuk internasionalisasi, kita membutuhkan string Unicode yang tidak cocok char. wcinmenggunakan wchar_t(karakter lebar) dan dapat digunakan untuk karakter Unicode.

deklarasi wcin

 wistream eksternal wcin;

Ini didefinisikan dalam file header "> file header.

The wcinobjek dipastikan akan diinisialisasi selama atau sebelum pertama kalinya sebuah objek dari tipe ios_base::Initdibangun. Setelah wcinobjek dibangun, wcin.tie()kembali &wcoutyang berarti bahwa setiap operasi input yang diformat pada wcin memaksa panggilan ke wcout.flush()jika ada karakter yang menunggu untuk output.

The "wc" di wcinmengacu pada "karakter lebar" dan 'in' berarti "masukan", maka wcinberarti "masukan karakter lebar". The wcinobjek digunakan bersama dengan operator ekstraksi (>>) untuk menerima aliran karakter. Sintaks umumnya adalah:

 wcin >> varName;

Operator ekstraksi dapat digunakan lebih dari satu kali untuk menerima banyak input sebagai:

 wcin >> var1 >> var2 >>… >> varN;

The wcinobjek juga dapat digunakan dengan fungsi anggota lain seperti getline(), read(), dll Beberapa fungsi anggota yang umum digunakan adalah:

  • wcin.get(wchar_t &ch): Membaca karakter yang luas dan menyimpannya di ch.
  • wcin.getline(wchar_t *buffer, int length): Membaca aliran karakter lebar ke dalam buffer string, Itu berhenti ketika
    • itu telah membaca panjang-1 karakter atau
    • ketika menemukan karakter akhir baris (' n') atau akhir file.
  • wcin.read(wchar_t *buffer, int n): Membaca n byte (atau hingga akhir file) dari aliran ke buffer.
  • wcin.ignore(int n): Mengabaikan karakter n berikutnya dari aliran input.
  • wcin.eof(): Mengembalikan nilai bukan nol jika akhir file (eof) tercapai.

Contoh 1: wcin dengan operator ekstraksi:

 #include using namespace std; int main() ( wchar_t word(20); wcout <> word; wcout << word; return 0; )

Saat Anda menjalankan program, output yang mungkin adalah:

 Masukkan kata: kathmandu kathmandu

Contoh 2: wcin dengan fungsi anggota:

 #include using namespace std; int main() ( wchar_t str(50), ch; wcout << L"Enter a string: "; wcin.getline(str, 20); wcout << L"Enter a character: "; wcin.get(ch); wcout << L"String = " << str << endl; wcout << L"Character = " << ch << endl; return 0; )

Saat Anda menjalankan program, output yang mungkin adalah:

 Masukkan string: program menggunakan wcin Masukkan karakter: h String = program menggunakan wcin Karakter = h

Hati-Hati

char16_tdan char32_t, yang diperkenalkan di C ++ 11 direkomendasikan untuk digunakan daripada wchar_tkarena wchar_t16 bit di beberapa sistem dan 32 bit di beberapa sistem lainnya. Ini menyulitkan port.

Artikel yang menarik...