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ä
cin
kä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
. wcin
käyttää wchar_t
(leveä merkki) ja on käytettävissä Unicode-merkkeihin.
wcin-ilmoitus
ulkoinen wistream wcin;
Se määritetään otsikkotiedostossa "> header file.
wcin
Tavoitteena on varmistettu alustaa aikana tai ennen ensimmäistä kertaa kohde tyyppi ios_base::Init
on rakennettu. Kun wcin
objekti on muodostettu, se wcin.tie()
palaa, &wcout
mikä tarkoittaa, että mikä tahansa muotoiltu wcin-operaatio wcinissä pakottaa puhelun, wcout.flush()
jos mitään merkkejä odottaa lähtöä.
"Wc" wcin
tarkoittaa "laajaa merkkiä" ja "in" tarkoittaa "syöttöä", mikä wcin
tarkoittaa "laajaa merkin syöttöä". wcin
Objektia 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;
wcin
Kohde 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_t
ja char32_t
jotka esiteltiin C ++ 11: ssä, suositellaan käytettävän sen sijaan, wchar_t
että se wchar_t
on 16-bittinen joissakin järjestelmissä ja 32-bittinen joissakin muissa. Tämä vaikeuttaa satamista.