万恶的linux -- 雷人大发现, multi-byte与unicode函数族互不兼容

suemiineo 2011-05-23 12:43:49
加精
今天在linux下碰到一个十分奇怪的bug, 最后发现竟然是unicode与multi-byte的函数相互排斥, 比如下面的程序

int main()
{

printf("output multi-byte string.\n");

wprintf(L"output unicode string.\n");

}

则只输出:output multi-byte string.

相反下面的代码

int main()
{

wprintf(L"output unicode string.\n");

printf("output multi-byte string.\n");

}

则只输出:output unicode string.

决定因素为multi-byte及unicode函数族谁最先被编译, 这是在是太雷人了!!!

而在VC下则可以同时使用printf及wprintf.

有人能站出来解释下么?
...全文
4055 127 打赏 收藏 转发到动态 举报
写回复
用AI写文章
127 条回复
切换为时间正序
请发表友善的回复…
发表回复
相思的鲸鱼 2011-06-30
  • 打赏
  • 举报
回复
从xunxun1982的回复看,这不算什么问题吧,你可以自己修改系统,这个问题应该可以解决吧
wsp_0216 2011-05-30
  • 打赏
  • 举报
回复
PS: 忘了说了, 楼主本人使用的linux系统是ubuntu 11.04x
linsen1211 2011-05-30
  • 打赏
  • 举报
回复
顶!!!!!!!
小邪邪 2011-05-30
  • 打赏
  • 举报
回复
unicode与multi-byte的函数相互排斥?
yang677888 2011-05-29
  • 打赏
  • 举报
回复
围观 呵呵
lijianbin9 2011-05-29
  • 打赏
  • 举报
回复
深奥的 东西啊,
许文君 2011-05-28
  • 打赏
  • 举报
回复
[Quote=引用 106 楼 shixuewuhen 的回复:]

标准I/O文件流可用于单字节或多字节字符集,流的定向决定了所读、写的字符是单字节或多字节的。当一个流被创建时,并没有定向,若在未定向的流上使用一个多字节i/o函数,则该流的定向设置为宽定向的,若在未定向的流上使用单字节i/o函数,则将该流的定向设置为字节定向的。
有两个函数可以专门改变流的定向:freopen(清除流的定向)和fwide(设置流的定向),需要注意fwide只针对未定向的流,已定……
[/Quote]
mark了
xiaomacoming 2011-05-28
  • 打赏
  • 举报
回复
学习中。
heytry4 2011-05-28
  • 打赏
  • 举报
回复
听说回复可得分
haidao27kb 2011-05-27
  • 打赏
  • 举报
回复
以前在其它论坛看人说过这个问题,不过也没有人能实质性的回答个所以然
yangcomes 2011-05-26
  • 打赏
  • 举报
回复
我也想知道。
jiahehao 2011-05-26
  • 打赏
  • 举报
回复
只用redhat的人飘过~~~~
kokition 2011-05-26
  • 打赏
  • 举报
回复
学习了
HOME_ning 2011-05-26
  • 打赏
  • 举报
回复
什么是linux?
z928525056 2011-05-26
  • 打赏
  • 举报
回复
高手!!!!
「已注销」 2011-05-26
  • 打赏
  • 举报
回复
没办法,中国人对linux的贡献实在太少!
zhd19831214 2011-05-26
  • 打赏
  • 举报
回复
试试~~~
hananya 2011-05-25
  • 打赏
  • 举报
回复
学习学习- -....
黑风不是大侠 2011-05-25
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 dorfmeisterqqq 的回复:]

先给大家推荐几个电子书的网站,自己看书去


http://www.google.com
不解释

http://www.itpub.com
这个网站的电子书真的很棒,更新超快,是中文社区最好的技术图书分享论坛

http://www.douban.com
书评网站,加上社区,我的挚爱

http://scholar.google.com
Google学术搜索

h……
[/Quote]
顶一个……
zhan7505201 2011-05-25
  • 打赏
  • 举报
回复
标题有些夸张。
加载更多回复(107)

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧