|
|
第 1 帖 | |
|
|
标题: curses显示中文“半乱码”[问题已经解决:关键是-lcursesw] /*
我想要输出 “中华人民共和国” “2007年1月8日” 却输出了: “中�~M~N人��~Q�~E��~R~L�~[�” “2007年1�~\~H8�~W�” */ #include <stdio.h> #include <curses.h> int main() { initscr(); clear(); mvaddstr(0, 0, "中华人民共和国"); mvaddstr(1, 0, "2007年1月8日"); refresh(); getchar(); endwin(); return 0; } ************************************************************** output: 中�~M~N人��~Q�~E��~R~L�~[� 2007年1�~\~H8�~W� 此帖于 07-01-12 14:39 被 hoho_zhao 编辑. 原因: 解决问题 |
|
|
|
|
|
|
|
第 2 帖 | |
|
|
首先你的console支持不支持中文显示,如果是终端安装zhcon.是伪终端如果可以显示中文就ok了。
其次,看看printf("中文");正常不正常。 最后,curses.h最好是ncurses.h。
__________________
在未上大学时,我一直以为自己是个天才。 正在上大学时,我以为自己将是个天才。 读完大学后,我才发现自己是并且从来就是一个彻头彻尾的傻瓜, 自大。。。浮躁。。。终究一无是处。 |
|
|
|
|
|
|
|
第 3 帖 | |
|
|
FC5,终端可以正常输出中文
如: printf("中文"); 可以在终端正常显示 开始,initscr()函数初始化了另外一个窗口, 在endwin()之前只能对那个新窗口读写。 这时,不能用printf(),因为printf()输出到标准输出, 而不是initscr()开的窗口。 我知道只能用addstr系列罢了,但是输出的中文,有一些可以显示,一些则乱马! |
|
|
|
|
|
|
|
第 4 帖 | |
|
|
ncurses.h 与curses.h有何区别?
|
|
|
|
|
|
|
|
第 5 帖 | ||
|
|
引用:
这个的中文问题我觉得很可能是编码问题,如果都用utf8的编码方式看看有没有效果,还有我记得ncurses编译的时候有个utf8的选项,不知道楼主有没有注意。 |
||
|
|
|
||
|
|
第 6 帖 | |
|
|
我见不到什么UTF-8编码选项啊?man 了一下 ncurses,一大堆,好像都没有说........
如果它全部中文都没有显示出来那还好,但是 它能显示一些出来,难道这些编码与某些编码有吻合之处? |
|
|
|
|
|
|
|
第 7 帖 | |
|
|
大兄弟,做人要厚道啊,你试试看这面这个帖子...
http://www.linuxsir.org/bbs/showthread.php?t=267078
__________________
帮助我,帮助你 |
|
|
|
|
|
|
|
第 8 帖 | |
|
|
呵呵,看过了,也试过了,没用,照样是一些中文可以显示,一些乱码
__________________
人在世上滚…… |
|
|
|
|
|
|
|
第 9 帖 | |
|
|
/*
gcc src.s -o dst -lncursesw */ #include <ncursesw/ncurses.h> #include <locale.h> int main() { setlocale(LC_ALL,""); char *out1="谁说没有中国文字!\n"; char *out2="这是什么?\n"; char *out3="都说了这么准可以\n"; initscr(); cbreak(); printw("%s",out1); printw("%s",out2); printw("%s",out3); printw("这什么回事儿?\n"); refresh(); getchar(); endwin(); return 0; } |
|
|
|
|
|
|
|
第 10 帖 | |
|
|
问题已经解决,关键是: -lnursesw
用-lcurses不行,就是少了w wchar_t,估计是“宽”字符 谢谢easycat兄! 唉,可否解释一下默认怎么没有按“宽”字符输出。。。。 |
|
|
|
|
|
|
|
第 11 帖 | |
|
|
hoho_zhao 想写一个编辑器?呵呵,可以读读 Emacs 的源代码。
__________________
你所知道的有关计算的东西,其他人也都能学到。绝不要认为似乎成功计 算的钥匙就掌握在你的手里。你所掌握的,也是我认为并希望的,也就是 智慧:... What you know about computing other people will learn. Don't feel as if the key to successful computing is only in your hands. What's in your hands, I think and hope, is intelligence: ... - Alan J. Perlis |
|
|
|
|
|
|
|
第 12 帖 | |
|
|
估计现在还没有能力看懂那些源代码,等等吧
|
|
|
|
|
|
|
|
第 13 帖 | ||
|
|
引用:
当然,一切的开始是要熟悉 Emacs。 |
||
|
|
|
||
|
|
第 14 帖 | |
|
|
我平时用的是 vim + gedit 感觉Emacs有些繁琐, gvim也不喜欢用
Emacs的源码是否自带?还是另外下载? |
|
|
|
|
|
|
|
第 15 帖 | ||
|
|
引用:
|
||
|
|
|
||