📜  C++ vfwprintf()

📅  最后修改于: 2020-09-25 09:42:12             🧑  作者: Mango

C++中的vfwprintf() 函数用于将格式化的宽字符串写入文件流。

vfwprintf() 函数在头文件中定义。

vfwprintf()原型

int vfwprintf( FILE* stream, const wchar_t* format, va_list vlist );

vfwprintf() 函数将format指向的宽字符串写入文件流stream 。宽字符串格式可能包含以%开头的格式说明符,这些格式说明符由作为列表vlist传递的变量的值替换。

vfwprintf()参数

vfwprintf()返回值

示例:vfwprintf() 函数如何工作?

#include 
#include 
#include 

void write(const wchar_t *fmt, ...)
{
    va_list args;
    va_start(args, fmt);
    vfwprintf(fmt, args);
    va_end(args);
}

int main ()
{
    wchar_t desc[5][10] = {L"Eta",L"Theta",L"Iota",L"Kappa",L"Lamda"};
    int x = 0;

    setlocale(LC_ALL, "en_US.UTF-8");
    wprintf(L"Some Greek Letters\n");
    for (wchar_t i=L'\u03b7'; i<=L'\u03bb'; i++)
    {
        write(L"%ls : %lc\n", desc[x], i);
        x++;
    }

    return 0;
}

运行该程序时,会将以下内容写入example.txt:

Some Greek Letters
Eta : η
Theta : θ
Iota : ι
Kappa : κ
Lamda : λ