一个宽字符在C语言如何输入问题

在main函数中定义一个宽字符串:wchar_twt[]=L"123王平abc";但是我想不在函数中定义wt的值而是在外面从stdin中输入,请问和C中字符串输入一样吗?... 在main函数中定义一个宽字符串:
wchar_t wt[]=L"123王平abc";
但是我想不在函数中定义wt的值而是在外面从stdin中输入,请问和C中字符串输入一样吗? 用scanf函数?还是???

帮忙把代码写出来,谢谢了!
呵呵,还是你行。
我的意思是在终端上输入“fsd发送gre”,并且可以在屏幕是显示“fsd发送gre”
定义成:wchar_t wt[256];
然后是这样的: wscanf(L"%s",wt);wprintf( L"%s\n", buff );就打印出来。
展开
 我来答
风若远去何人留
2015-06-16 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450135
专业C/C++软件开发

向TA提问 私信TA
展开全部

宽字符有专门的输入函数wscanf。

用普通的scanf也可以做到,但需要做处理,所以在输入宽字符的时候,最佳选择还是专门的wscanf。

当输入宽字符型变量时,需要使用格式符号%lc, 输入宽字符串时需要使用格式符号%ls。

另外,宽字符一般用wprintf输出,这时输出字符和字符串时,用%c和%s即可。

参考代码如下:

void main( void )
{
   wchar_t wc, ws[81];//定义一个宽字符变量,及一个宽字符数组。
   wscanf( L"%lc%ls",&wc, ws );//输入值。
   wprintf( L"%c,%s\n",wc, ws);//输出值。
}
匿名用户
2009-12-09
展开全部
ASNI C 有wchar_t类型,定义在stddef.h文件中,对应的宽字符版本IO函数有wprintf()/wscanf()/swscanf()/swprintf()等
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiongzixuan
2009-12-09 · 超过32用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:63.8万
展开全部
用scanf输入多字节的,再将多字节转成unicode保存到wt
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sandamailcn
2009-12-09 · TA获得超过743个赞
知道小有建树答主
回答量:541
采纳率:0%
帮助的人:0
展开全部
定义成
#include <stdio.h>

main()
{
wchar_t buff[256];
scanf( "%s", buff );
printf( "%s\n", buff );
}
但输入还按scanf就可以

wscanf(...)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2009-12-09
展开全部
c语言不支持宽字符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式