C ++ wcin - C ++ -kirjasto

C ++: n wcin-objekti on luokan wistream-objekti. Sitä käytetään tulon vastaanottamiseen tavallisesta syöttölaitteesta eli näppäimistöstä. Se liittyy normaaliin C-tulovirtaan stdin.

Ero wcinin ja cinin välillä

cinkäyttäjät char(kapea merkki) merkityypiksi. Sitä voidaan käyttää ASCII- ja ANSI-merkkeihin.

Kansainvälistymiseen tarvitaan Unicode-merkkijonoja, jotka eivät sovi yhteen char. wcinkäyttää wchar_t(leveä merkki) ja on käytettävissä Unicode-merkkeihin.

wcin-ilmoitus

 ulkoinen wistream wcin;

Se määritetään otsikkotiedostossa "> header file.

wcinTavoitteena on varmistettu alustaa aikana tai ennen ensimmäistä kertaa kohde tyyppi ios_base::Initon rakennettu. Kun wcinobjekti on muodostettu, se wcin.tie()palaa, &wcoutmikä tarkoittaa, että mikä tahansa muotoiltu wcin-operaatio wcinissä pakottaa puhelun, wcout.flush()jos mitään merkkejä odottaa lähtöä.

"Wc" wcintarkoittaa "laajaa merkkiä" ja "in" tarkoittaa "syöttöä", mikä wcintarkoittaa "laajaa merkin syöttöä". wcinObjektia käytetään yhdessä uuttamalla operaattorin (>>) saadakseen virran merkkiä. Yleinen syntakse on:

 wcin >> varName;

Poimioperaattoria voidaan käyttää useammin kuin kerran useiden tulojen hyväksymiseen:

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

wcinKohde voidaan käyttää myös muiden funktiot, kuten getline(), read()jne Jotkut yleisesti käytetyt funktiot ovat:

  • wcin.get(wchar_t &ch): Lukee leveän merkin ja tallentaa sen ch: hen.
  • wcin.getline(wchar_t *buffer, int length): Lukee leveän merkkivirran merkkijonopuskuriin, Se pysähtyy kun
    • se on lukenut pituus-1 merkkiä tai
    • kun se löytää rivin lopun merkin (' n') tai tiedoston lopun.
  • wcin.read(wchar_t *buffer, int n): Lukee n tavua (tai tiedoston loppuun asti) virrasta puskuriin.
  • wcin.ignore(int n): Ohittaa seuraavat n merkkiä syöttövirrasta.
  • wcin.eof(): Palauttaa arvon, joka ei ole nolla, jos tiedoston loppu (eof) saavutetaan.

Esimerkki 1: wcin uuttamisoperaattorilla:

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

Kun suoritat ohjelmaa, mahdollinen tulos on:

 Kirjoita sana: kathmandu kathmandu

Esimerkki 2: wcin jäsenfunktiolla:

 #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; )

Kun suoritat ohjelmaa, mahdollinen tulos on:

 Kirjoita merkkijono: Ohjelma wcinillä Syötä merkki: h Merkkijono = Ohjelma wcin-merkillä = h

Ole varovainen

char16_tja char32_tjotka esiteltiin C ++ 11: ssä, suositellaan käytettävän sen sijaan, wchar_tettä se wchar_ton 16-bittinen joissakin järjestelmissä ja 32-bittinen joissakin muissa. Tämä vaikeuttaa satamista.

Mielenkiintoisia artikkeleita...