免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123
最近访问板块 发新帖
楼主: 打靶归来
打印 上一主题 下一主题

curses 中如何在一行中画二条线(========) [复制链接]

论坛徽章:
0
21 [报告]
发表于 2008-05-13 17:18 |只看该作者
原帖由 打靶归来 于 2008-5-13 16:30 发表

**
如何查询终端上的编码?


如果你觉得查太麻烦.
用下面程序简单看一下:
char:

#define MAX_CHAR_CODE  255
char ch;
for(ch=0;ch<MAX_CHAR_CODE;ch++)  printf("%c ",ch);

nchar:

#define MAX_CHAR_CODE  65535
unsigned short  i;
unsigned short  *nch=NULL;
unsigned char  ch[3];

nch=(unsigned short*)ch;
for(i=0;i<MAX_CHAR_CODE;i++)
{
   *nch=i;
     ch[2]=0;  
     printf("%s ",ch);
}

论坛徽章:
0
22 [报告]
发表于 2008-05-14 08:34 |只看该作者
试了好久,原来要在控制台终端上才能正确打印出超过127的ascii字符,
putty显示出来的都是问号.

论坛徽章:
0
23 [报告]
发表于 2008-05-14 08:38 |只看该作者
原帖由 flw 于 2008-5-13 11:59 发表
还是用等号吧。

**
水平等号可以直接用'='输入,
那垂直等号(=)是要怎么输入?

论坛徽章:
0
24 [报告]
发表于 2008-05-14 08:42 |只看该作者
原帖由 system888net 于 2008-5-13 12:51 发表


═ 的编码是: 0xa854

查一下你的终端上的编码.
用printf(...) 可以验证

****
测试机用下面代码:
  1.      for (c=1;c<=255;c++)

  2.                          printf("ASCII:%d\tHEX:%x\tchar:%c\n\n",c,c,c);
复制代码

显示出十进制是205,十六进制是cd对应的字符才是'═'
而0xa854是怎么算出来的?

[ 本帖最后由 打靶归来 于 2008-5-14 08:43 编辑 ]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
25 [报告]
发表于 2008-05-14 10:44 |只看该作者
原帖由 打靶归来 于 2008-5-14 08:38 发表

**
水平等号可以直接用'='输入,
那垂直等号(=)是要怎么输入?

这么跟你说吧,我觉得,程序最主要的是功能,界面嘛,马马虎虎就行,我不认为“|”有什么不好。
  1. |
  2. |
  3. |
  4. |
  5. |
  6. |
复制代码

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
26 [报告]
发表于 2008-05-14 10:48 |只看该作者
masked

[ 本帖最后由 flw 于 2008-5-14 10:50 编辑 ]

论坛徽章:
0
27 [报告]
发表于 2008-05-14 11:11 |只看该作者
原帖由 打靶归来 于 2008-5-14 08:42 发表

****
测试机用下面代码:
     for (c=1;c


"显示出十进制是205,十六进制是cd对应的字符才是'═'
而0xa854是怎么算出来的?"

一个是单字节编码(0xcd),一个是双字节编码(0xa854),即常说的"西文制表符"和"中文制表符"
如果你的终端只支持127以内的字符显示,那就只能用=,| 等代提了.  虽然美观度差一下,但兼容性好.

[ 本帖最后由 system888net 于 2008-5-14 11:16 编辑 ]

论坛徽章:
0
28 [报告]
发表于 2008-05-14 11:16 |只看该作者
原帖由 flw 于 2008-5-14 10:44 发表

这么跟你说吧,我觉得,程序最主要的是功能,界面嘛,马马虎虎就行,我不认为“|”有什么不好。
|
|
|
|
|
|


nod

论坛徽章:
0
29 [报告]
发表于 2008-05-14 11:46 |只看该作者

回复 #27 system888net 的帖子

双字节的验证参考21楼的nchar 代码

论坛徽章:
0
30 [报告]
发表于 2008-05-14 14:22 |只看该作者
还是用等号吧,只有ascii码最通用了,其他都会有乱码问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP