putwc
函数 <cwchar>
wint_t putwc (wchar_t wc, FILE* stream);
向流中写入宽字符
将宽字符wc写入stream并移动位置指示器。
因为宽字符在外部文件中由多字节字符表示,这个函数可能涉及到向文件写入几个字节,
就像调用
wcrtomb
来用流的内部
mbstate_t对象转换wc一样。
如果宽字符不能使用多字节编码表示,则该函数返回
WEOF并将EILSEQ设置为
errno的值。
如果发生写错误,该函数将返回
WEOF
并设置流的错误指示符(
ferror)。
Putwc和fputwc是等价的,除了Putwc可以在某些库中作为宏实现。
有关直接写入标准输出的类似函数,请参阅putwchar。
这相当于 putc(<cstdio>)的宽字符版本。
☲ 参数
wc
要写的宽字符。
stream
指向标识输出流的
FILE对象的指针。
流不区分字符模式(流上的第一次i/o操作确定它是单字符还是宽字符,请参见
fwide)。
☉ 返回值
成功时,返回所写的字符(wc转换为类型为
FILE的值)。
返回类型是
FILE,以容纳特殊值
WEOF,它表示失败:
如果宽字符不能被解释为有效的多字节字符,该函数将返回
WEOF
并将
errno设置为EILSEQ。
如果发生写错误,该函数还返回
WEOF,
并设置错误指示符(
ferror)。
☣ 示例
/* fputwc example */
#include <stdio.h>
int main ()
{
FILE * pFile;
wchar_t wc;
pFile = fopen ("example.txt","w");
if (pFile!=NULL) {
for (wc = L'A' ; wc <= L'Z' ; ++wc)
putwc ( wc , pFile );
fclose (pFile);
}
return 0;
}
|
🍄 另请参阅
putc |
将字符写入流(function ) |
fputwc |
向流中写入宽字符(function ) |
getwc |
从流中获得宽字符(function ) |