ncurses 中的线图
我一整天都在尝试在 ncurses 中进行简单的线条绘制(例如框),但我无法让它工作。我正在尝试打印扩展的 ASCII 字符,例如此处找到的字符: http://www.theasciicode.com.ar/ascii-table-codes/ascii-codes-219.html 我已经看到了一些对 wchar_t 的提及,但它显然需要 ncursesw,我不知道如何包含它(我知道它已安装)
我在 OS X 10.6.2 和 GCC 4.2 下使用 XCode。
有什么想法吗?
I've been trying to do simple line drawing (e.g. boxes) in ncurses all day, but I can't get it to work. I'm trying to print extended ASCII characters like the ones found here: http://www.theasciicode.com.ar/ascii-table-codes/ascii-codes-219.html
I've seen a few mentions to wchar_t, but it apparently requires ncursesw, which I can't figure out how to include (I know it's installed)
I'm using XCode under OS X 10.6.2 and GCC 4.2.
Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你不需要 wchar_t。 “扩展”代码(约 1985 年)小于 255。例如,要绘制双线框的左下角,请使用代码 200 十进制、310 八进制(“\310”)或 0xc8(“\xc8”) ”)。
这些字符需要您正在使用的终端模拟器的支持,但它应该可以正常工作。
编辑
我对旧的 Curses 的 7 位与 8 位模式有一个模糊的记忆,但我在 FSF ncurses 1.190 (2008/12/20) 中找不到任何提及,也被标识为 v5.7.3.20090207我在 Linux 上有。 curs_addch 的手册页 提到了画线字符的符号常量,因此也许您应该使用这些字符而不是文字线条画字符:
You don't need wchar_t. The "extended" codes (c. 1985) are less than 255. For example, to draw the left lower corner of a double-lined box, use code 200 decimal, 310 octal ("\310") or 0xc8 ("\xc8").
Those characters need support from the terminal emulator you are using, but it should work fine.
edit
I have a vague memory of a 7-bit vs. 8-bit mode for old curses, but I cannot find any mention of it in the FSF ncurses 1.190 (2008/12/20), also identified as v5.7.3.20090207 which I have on Linux. The man page for curs_addch mentions symbolic constants for line drawing characters, so perhaps you are expected to use those instead of literal line drawing characters: