C 库中的 wprintf() 和 wscanf


在这里我们将了解 C 中的 wprintf() 和 wscanf() 函数。这些是针对宽字符的 printf() 和 scanf() 函数。这些函数存在于 wchar.h

wprintf() 函数用于将宽字符打印到标准输出中。宽字符串格式可以包含格式说明符,从 % 符号开始,它们会被传递给 wprintf() 的变量值替换。

语法如下 -

int wprintf (const wchar_t* format, ...);

此函数使用格式。此格式是一个以空结尾的宽字符串指针,将在控制台写入。它将包含宽字符和一些以 % 开头的格式说明符。然后,(…) 表示附加参数。这些是要打印的数据,它们根据格式说明符以序列出现。

此函数返回打印的字符数。如果失败,它可能会返回负值。

示例

#include <stdio.h>
#include <wchar.h>
main() {
   wint_t my_int = 10;
   wchar_t string[] = L"Hello World";
   wprintf(L"The my_int is: %d 
", my_int);    wprintf(L"The string is: %ls
", string); }

输出

The my_int is: 10
The string is: Hello World

函数 wscanf() 用于从控制台中获取数据并将其存储到合适的变量中。其他参数应指向已经分配的对象,该对象类型由格式字符串中相应的格式说明符指定。

示例

#include <stdio.h>
#include <wchar.h>
main() {
   wint_t my_int = 10;
   wprintf(L"Enter a number: ");
   wscanf(L"%d", &my_int);
   wprintf(L"The given integer is: %d 
", my_int); }

输出

Enter a number: 40
The given integer is: 40

更新于: 2019 年 7 月 30 日

1K+ 查看

开启您的职业生涯

获得认证,完成课程

开始
广告