C ++ esošais wcin objekts ir klases wistream objekts. To izmanto, lai pieņemtu ievadi no standarta ievades ierīces, ti, tastatūras. Tas ir saistīts ar standarta C ievades straumes stdin.
Atšķirība starp wcin un cin
cin
lietotāji char
(šaurs raksturs) kā rakstzīmju tips. To var izmantot ASCII un ANSI rakstzīmēm.
Internacionalizācijai mums ir nepieciešamas unikoda virknes, kas neiederas char
. wcin
lieto wchar_t
(plašs raksturs) un ir izmantojams Unicode rakstzīmēm.
wcin deklarācija
extern wistream wcin;
Tas ir definēts galvenes failā "> header file.
wcin
Objekts tiek nodrošināta inicializēts laikā vai pirms pirmo reizi objekts tipa ios_base::Init
konstrukciju. Pēc wcin
objekta konstruēšanas wcin.tie()
atgriežas, &wcout
kas nozīmē, ka jebkura formatēta ievades operācija ar wcin piespiež izsaukt, wcout.flush()
ja gaidāmas kādas rakstzīmes.
"Wc" wcin
norāda uz "plašu rakstzīmi" un "in" nozīmē "ievadi", tātad wcin
nozīmē "plaša rakstura ievade". wcin
Objekts tiek izmantots kopā ar ieguves operatoru (>>), lai saņemtu plūsmu rakstzīmes. Vispārējā sintakse ir šāda:
wcin >> varName;
Ekstrakcijas operatoru var izmantot vairāk nekā vienu reizi, lai pieņemtu vairākas ievades kā:
wcin >> var1 >> var2 >>… >> varN;
wcin
Objektu var izmantot arī citu dalībvalstu funkcijas, piemēram getline()
, read()
uc Daži no visbiežāk izmanto dalībvalstu funkcijas ir:
wcin.get(wchar_t &ch):
Izlasa plašu rakstzīmi un glabā to ch.wcin.getline(wchar_t *buffer, int length):
Stīgu buferī nolasa platu rakstzīmju straumi, kad apstājas- tajā ir nolasītas 1 rakstzīmes vai
- kad tā atrod rindas beigu rakstzīmi (' n') vai faila beigas.
wcin.read(wchar_t *buffer, int n):
No straumes nolasa n baitus (vai līdz faila beigām) buferī.wcin.ignore(int n):
Tiek ignorētas nākamās n ievades straumes rakstzīmes.wcin.eof():
Atgriež vērtību, kas nav nulle, ja ir sasniegts faila beigu punkts (eof).
1. piemērs: wcin ar ekstrakcijas operatoru:
#include using namespace std; int main() ( wchar_t word(20); wcout <> word; wcout << word; return 0; )
Palaidot programmu, iespējamā izeja būs:
Ievadiet vārdu: kathmandu kathmandu
2. piemērs: wcin ar dalībnieka funkciju:
#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; )
Palaidot programmu, iespējamā izeja būs:
Ievadiet virkni: programma, izmantojot wcin. Ievadiet rakstzīmi: h String = programma, izmantojot wcin Character = h
Esi uzmanīgs
char16_t
un char32_t
, kas tika ieviesti C ++ 11, ieteicams izmantot, wchar_t
jo wchar_t
dažās sistēmās tas ir 16 bitu, bet citās 32 bitu. Tas apgrūtina pārnešanu.