命名空间
变体
操作

fputwc, putwc

来自 cppreference.com
< c‎ | io
 
 
文件输入/输出
类型和对象
函数
文件访问
直接输入/输出
无格式输入/输出
(C95)(C95)
(C95)
fputwcputwc
(C95)(C95)
(C95)
(C95)
格式化输入
(C99)(C99)(C99)(C11)(C11)(C11)     
 
定义在头文件 <wchar.h>
wint_t fputwc( wchar_t ch, FILE* stream );
(1) (自 C95 起)
wint_t putwc( wchar_t ch, FILE* stream );
(2) (自 C95 起)

将宽字符 ch 写入给定的输出流 stream

2) 可能会被实现为宏,并且可能多次对 stream 进行求值。

内容

[编辑] 参数

ch - 要写入的宽字符
stream - 输出流

[编辑] 返回值

成功时返回 ch 的副本。

失败时,返回 WEOF 并设置 stream 上的错误指示符(参见 ferror())。

如果发生编码错误,则还会将 errno 设置为 EILSEQ

[编辑] 示例

#include <errno.h>
#include <locale.h>
#include <stdio.h>
#include <stdlib.h>
#include <wchar.h>
 
int main(void)
{
    setlocale(LC_ALL, "en_US.utf8");
 
    errno = 0;
    if (fputwc(L'🍌', stdout) == WEOF)
    {
        if (errno == EILSEQ)
            puts("Encoding error in fputwc.");
        else
            puts("I/O error in fputwc.");
        return EXIT_FAILURE;
    }
}

可能的输出

🍌

[编辑] 参考资料

  • C23 标准 (ISO/IEC 9899:2024)
  • 7.31.3.3 fputwc 函数 (p: 430)
  • 7.31.3.8 putwc 函数 (p: 431-432)
  • C17 标准 (ISO/IEC 9899:2018)
  • 7.29.3.3 fputwc 函数 (p: 308)
  • 7.29.3.8 putwc 函数 (p: 310)
  • C11 标准 (ISO/IEC 9899:2011)
  • 7.29.3.3 fputwc 函数 (p: 422-423)
  • 7.29.3.8 putwc 函数 (p: 424)
  • C99 标准 (ISO/IEC 9899:1999)
  • 7.24.3.3 fputwc 函数 (p: 368)
  • 7.24.3.8 putwc 函数 (p: 370)

[编辑] 另请参阅

将字符写入文件流
(函数) [编辑]
(C95)
将宽字符串写入文件流
(函数) [编辑]
从文件流中获取宽字符
(函数) [编辑]
C++ 文档 for fputwc