C ++ wcin - C ++ standardna knjižnica

Objekt wcin u jeziku C ++ objekt je klase wistream. Koristi se za prihvaćanje unosa sa standardnog uređaja za unos, tj. Tipkovnice. Povezan je sa standardnim C ulaznim tokom stdin.

Razlika između wcina i cin

cinkorisnici char(uski znak) kao tip znaka. Može se koristiti za ASCII i ANSI znakove.

Za internacionalizaciju trebamo Unicode nizove koji se ne uklapaju char. wcinkoristi wchar_t(široki znak) i uporabljiv je za Unicode znakove.

wcin deklaracija

 extern wistream wcin;

Definirano je u datoteci zaglavlja "> datoteka zaglavlja.

Osigurano wcinje da se objekt inicijalizira tijekom ili prije prvog ios_base::Initkonstruiranja objekta tipa . Nakon što je wcinobjekt konstruiran, wcin.tie()vraća se, &wcoutšto znači da bilo koja formatirana operacija unosa na wcinu prisiljava poziv wcout.flush()ako su neki znakovi na čekanju za izlaz.

"Wc" u wcinodnosi se na "širok znak", a "in" znači "unos", dakle wcinznači "širok unos znakova". wcinObjekt se koristi zajedno s ekstrakcije operatora (>>) kako bi dobio tok znakova. Općenita sintaksa je:

 wcin >> varName;

Operator ekstrakcije može se koristiti više puta za prihvaćanje višestrukih ulaza kao:

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

wcinObjekt se također može koristiti s drugim funkcijama državama, kao što su getline(), read()itd Neke od najčešće korištenih funkcija članica su:

  • wcin.get(wchar_t &ch): Čita širok lik i pohranjuje ga u pogl.
  • wcin.getline(wchar_t *buffer, int length): Čita tok širokih znakova u međuspremnik niza, zaustavlja se kada
    • pročitao je duljinu-1 znakova ili
    • kada pronađe znak kraja retka (' n') ili kraj datoteke.
  • wcin.read(wchar_t *buffer, int n): Čita n bajtova (ili do kraja datoteke) iz toka u međuspremnik.
  • wcin.ignore(int n): Zanemaruje sljedećih n znakova iz ulaznog toka.
  • wcin.eof(): Vraća nula vrijednost ako je dosegnut kraj datoteke (eof).

Primjer 1: wcin s operatorom ekstrakcije:

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

Kada pokrenete program, mogući izlaz bit će:

 Unesite riječ: kathmandu kathmandu

Primjer 2: wcin s funkcijom člana:

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

Kada pokrenete program, mogući izlaz bit će:

 Unesite niz: program pomoću wcina Unesite znak: h String = program pomoću wcina Character = h

Budi oprezan

char16_ti char32_t, koji su uvedeni u C ++ 11, preporuča se koristiti umjesto toga wchar_tjer wchar_tje 16-bitni na nekim sustavima i 32-bitni na nekim drugim. To otežava prijenos.

Zanimljivi članci...