C 编程/stdio.h/wprintf
外观
(从 C 编程/C 参考/stdio.h/wprintf 重定向)
wprintf是一个 C 标准库函数,定义在 wchar.h 中。它的函数签名是
int wprintf(const wchar t *format,...);
wprintf() 将输出写入 stdout,即标准输出流。它使用可变参数列表。此函数以及 vprintf、vfprintf、vsprintf、vsnprintf 和 vasprintf 等函数使程序员能够实质上创建自己的 printf 变体。
wprintf
函数在 C 中被发现,它在格式字符串的控制下将输出写入流。格式字符串指定后续参数如何转换为输出。
wprintf 是 printf 格式的宽字符版本。格式是一个宽字符字符串,其中 wprintf 和 printf 在以 ANSI 模式打开时行为类似。
以下是了解 wprintf 工作原理的示例代码。
代码
#include<stdio.h>
#include<wchar.h>
int main(int argc,char *argv[])
{
wchar_t *str = L"@TAJMAHAL@#$$$";
wprintf(L"%ls\n", str);
return EXIT_SUCCESS;
}
运行代码后,输出将如下所示
@TAJMAHAL@#$$$
限制
1. wprintf() 不是可移植函数。
2. wprintf() 不能与 printf() 混合使用。
3. wprintf 不能打印双精度值。
for eg. 2^56 is the double value which cannot be printed using wprintf().