Developer's Daily | Unix by Example |
main | java | perl | unix | dev directory | web log |
fgetws ? read a wide character string from a FILE stream |
#include <wchar.h> wchar_t *fgetws (wchar_t *ws, int n, FILE *stream); |
The fgetws function is the wide-character equivalent of the fgets function. It reads a string of at most n-1 wide characters into the wide-character array pointed to by ws, and adds a terminating L’\0’ character. It stops reading wide characters after it has encountered and stored a newline wide character. It also stops when end of stream is reached. The programmer must ensure that there is room for at least n wide characters at ws. |
The fgetws function, if successful, returns ws. If end of stream was already reached or if an error occurred, it returns NULL. |
ISO/ANSI C, UNIX98 |
fgetwc(3) |
The behaviour of fgetws depends on the LC_CTYPE category of the current locale. In the absence of additional information passed to the fopen call, it is reasonable to expect that fgetws will actually read a multibyte string from the stream and then convert it to a wide character string. This function is unreliable, because it does not permit to deal properly with null wide characters that may be present in the input. |