Функцията fgetws () в C ++ чете определен максимален брой широки символи от дадения файлов поток.
Функцията fgetws () е дефинирана в заглавния файл.
fgetws () прототип
wchar_t * fgetws (wchar_t * str, int count, FILE * поток);
Функцията fgetws () чете максимум широки знаци от даден файлов поток, т.е. поток, и ги съхранява в масива, посочен от str.
Анализът спира, ако настъпи краят на файла или бъде намерен символ на нов ред ( n), преди да се прочетат (count-1) широки символи. Масивът str ще съдържа символа с широк нов ред, в случай че бъде намерен.
fgetws () Параметри
- str: Указател към широк масив от символи, който съхранява съдържанието на файла.
- count: Максимален брой широки символи за писане.
- поток: Файловият поток за четене на широките символи.
fgetws () Върната стойност
При успех функцията fgetws () връща str, а при неуспех връща нулев указател.
Пример: Как работи функцията 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; )
Когато стартирате програмата, възможният изход ще бъде:
Hëĺĺo Everɏbȍdy C ++ ċăn haʼnđle tĥeș ë veɍƴ ŵeįrd čhāråc ŧerƨ