Funkce fgetws () v C ++ čte zadaný maximální počet širokých znaků z daného proudu souboru.
Funkce fgetws () je definována v hlavičkovém souboru.
prototyp fgetws ()
wchar_t * fgetws (wchar_t * str, int count, FILE * stream);
Funkce fgetws () načte maximálně počet širokých znaků 1 z daného proudu souboru, tj. Proudu, a uloží je do pole, na které ukazuje str.
Analýza se zastaví, pokud dojde ke konci souboru nebo pokud je před přečtením širokých znaků (počet 1) nalezen znak nového řádku ( n). Str pole bude obsahovat znak širokého nového řádku pro případ, že bude nalezen.
fgetws () parametry
- str: Ukazatel na široké pole znaků, které ukládá obsah souboru.
- count: Maximální počet širokých znaků pro zápis.
- stream: Stream souborů pro čtení širokých znaků.
fgetws () Vrátí hodnotu
Při úspěchu funkce fgetws () vrací str a při selhání vrací nulový ukazatel.
Příklad: Jak funguje funkce fgetws ()?
#include #include #include #include using namespace std; int main() ( setlocale(LC_ALL, "en_US.UTF-8"); wchar_t line1() = L"Hëĺĺo Everɏbȍdy"; wchar_t line2() = L"C++ ċăn haʼnđle tĥeșë veɍƴ ŵeįrd čhāråcŧerƨ"; wchar_t data(20); FILE *fp = fopen("file.txt","r+"); fputws(line1, fp); fputws(line2, fp); rewind(fp); while(true) ( fgetws(data, 20, fp); if(!feof(fp)) wcout << data << endl; else break; ) fclose(fp); return 0; )
Při spuštění programu bude možný výstup:
Hëĺĺo Everɏbȍdy C ++ ʼnăn haʼnđle tĥeș ë veɍƴ ŵeįrd čhāråc ŧerƨ