📜  C++ vwprintf()

📅  最后修改于: 2020-09-25 09:47:20             🧑  作者: Mango

C++中的vwprintf() 函数用于将格式化的宽字符串写入stdout。

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

vwprintf()原型

int vwprintf( const wchar_t* format, va_list vlist );

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

vwprintf()参数

vwprintf()返回值

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

#include 
#include 
#include 

void write(const wchar_t *fmt, ...)
{
    va_list args;
    va_start(args, fmt);
    vwprintf(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;
}

运行该程序时,输出为:

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