C ++ wcin - C ++ standartinė biblioteka

C ++ esantis „wcin“ objektas yra klasės „wistream“ objektas. Jis naudojamas priimant įvestį iš standartinio įvesties įrenginio, ty klaviatūros. Jis siejamas su standartiniu C įvesties srauto stdin.

Skirtumas tarp wcin ir cin

cinvartotojai char(siauras simbolis) kaip simbolio tipas. Jis gali būti naudojamas ASCII ir ANSI simboliams.

Norint internacionalizuotis, mums reikalingos „Unicode“ eilutės, kurios netelpa char. wcinnaudoja wchar_t(platus simbolis) ir yra naudojamas „Unicode“ simboliams.

wcin deklaracija

 išorinis wistream wcin;

Tai apibrėžiama antraštės faile "> header file.

wcinUžtikrinamas objektas turi būti inicializuoti metu arba prieš pirmą kartą, kurio tipas objektas ios_base::Inityra sukonstruotas. Sukūrus wcinobjektą, wcin.tie()grąžinama, &wcouto tai reiškia, kad bet kokia suformatuota įvesties operacija su wcin priverčia iškviesti, wcout.flush()jei laukiama kokių nors simbolių.

„Wc“ wcinyra „platus simbolis“, o „in“ reiškia „įvestis“, taigi wcinreiškia „plataus simbolio įvestis“. wcinObjektas yra naudojama kartu su ekstrahavimo operatoriaus (>>), siekiant gauti simbolių srautą. Bendroji sintaksė yra:

 wcin >> varName;

Ištraukimo operatorių galima naudoti daugiau nei vieną kartą, norint priimti kelis įvestis kaip:

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

wcinObjektas taip pat gali būti naudojamas kartu su kitų valstybių funkcijų, tokių kaip getline(), read()ir tt Kai kurie iš dažniausiai naudojamų valstybėse funkcijų yra:

  • wcin.get(wchar_t &ch): Perskaito platų simbolį ir saugo jį ch.
  • wcin.getline(wchar_t *buffer, int length): Į eilutės buferį nuskaito plačių simbolių srautą, kai jis sustoja
    • jis perskaitė 1 ilgio simbolius arba
    • radęs eilutės pabaigos simbolį (' n') arba failo pabaigą.
  • wcin.read(wchar_t *buffer, int n): Skaito n baitus (arba iki failo pabaigos) iš srauto į buferį.
  • wcin.ignore(int n): Nepaiso kitų n įvesties srauto simbolių.
  • wcin.eof(): Grąžina reikšmę, kuri nėra nulis, jei pasiekiama failo pabaiga (eof).

1 pavyzdys: wcin su ekstrahavimo operatoriumi:

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

Kai paleisite programą, galimas rezultatas bus:

 Įveskite žodį: kathmandu kathmandu

2 pavyzdys: wcin su nario funkcija:

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

Kai paleisite programą, galimas rezultatas bus:

 Įveskite eilutę: programa naudojant wcin Įveskite simbolį: h String = programa, naudojant wcin Character = h

Būk atsargus

char16_tir char32_t, kurie buvo pristatyti C ++ 11, rekomenduojama naudoti vietoj, wchar_tnes wchar_tkai kuriose sistemose jis yra 16 bitų, o kitose - 32 bitų. Tai apsunkina perkėlimą.

Įdomios straipsniai...