fgetwc函数用法详解
fgetwc函数简介
- 头文件包含
#include <stdio.h>
#include <wchar.h>
- 函数定义
wint_t fgetwc(FILE * stream );
wint_t getwc(FILE * stream );
fgetwc函数常见使用错误
- 编译错误
warning: implicit declaration of function ‘fgetwc’ [-Wimplicit-function-declaration]
解决办法:包含头文件
#include <stdio.h>
#include <wchar.h>
fgetwc函数详细描述
fgetwc ()函数是fgetc (3)函数的宽字符等效函数。它从stream中读取一个宽字符并返回它。如果到达流的结尾,或者如果ferror(stream)变为true,则返回WEOF ;如果发生宽字符转换错误,则将errno设置为EILSEQ,并返回WEOF
getwc ()函数或宏函数与fgetwc ()相同它可以作为宏实现,并且可以计算它的参数不止一次。从来没有理由使用它。
有关非锁定对应项,请参见unlocked_stdio (3)
fgetwc函数返回值
fgetwc ()函数返回流中的下一个宽字符,或WEOF 在发生错误时,errno被设置为指示原因。
fgetwc函数错误码
除了通常的,还有
- EILSEQ 从输入流中获得的数据不构成有效字符。
fgetwc函数其他说明
fgetwc ()的行为取决于当前区域设置的 LC_CTYPE 类别。
在没有传递给fopen (3)调用的附加信息的情况下,fgetwc ()实际上会从流中读取多字节序列,然后将其转换为宽字符,这是合理的。
评论区