📜  C++ fwprintf()(1)

📅  最后修改于: 2023-12-03 15:13:54.260000             🧑  作者: Mango

C++ fwprintf()函数

简介

fwprintf() 是C++标准库中的函数,它以格式化的方式将宽字符输出到指定的输出流中。fwprintf()函数与fscanf()函数操作类似,可以用不同类型的输出符号输出不同类型的数据。这个函数的正式签名如下:

int fwprintf(FILE *stream, const wchar_t *format, ...);
参数
  • stream: 文件流指针,指定将数据输出到哪个流中。常见的输出流包括标准输出(stdout)和标准错误(stderr)。
  • format: 字符串类型的参数,定义了输出格式。与C语言的printf()函数类似,format字符串可以包含占位符,用于输出对应类型的数据。
  • ...: 根据format字符串中占位符的类型,传递相应类型的参数。可以有多个参数,一一对应format字符串中的占位符。
返回值

fwprintf()函数返回成功输出的字符数,如果发生错误则返回一个负数。在遇到文件结束标志EOF时也会返回一个负数。

示例
#include <stdio.h>
#include <wchar.h>

int main() {
    wchar_t *name = L"张三";
    int age = 20;
    double height = 1.8;

    // 将格式化字符串输出到标准输出流stdout
    fwprintf(stdout, L"姓名:%s,年龄:%d,身高:%.2f\n", name, age, height);

    // 将格式化字符串输出到标准错误流stderr
    fwprintf(stderr, L"出错了!");

    return 0;
}
结束语

fwprintf()的使用与printf()类似,不过它输出的是宽字符类型的数据。在需要输出Unicode编码的字符串或需要跨平台的字符输出时,fwprintf()是很好的选择。