51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 5984|回复: 3
打印 上一主题 下一主题

请教什么叫Problem chars

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-3-25 10:28:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
什么5c              7c都是什么意思??
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-4-16 23:02:22 | 只看该作者
我听说过这个,今天也在网上看了一些相关的资料,5c实际上是针对十六进制的0x5c来说的,7c也是针对十六进制里面的0x7c来说的。
你可以先在网上看看字符编码相关的知识。十六进制0x5c对应的字符是\,0x7c对应的字符是|。你可以在网上找个转换器转换一下就知道了。
因为对于中文和日文等一些东亚文字一个字符对应的是两个16进制数,如果一个汉字或者日文的编码中包含5C或7C,还有一些其他的特殊字符5E(^),7B({)等,如果程序处理的不好,在程序中如果用到这些文字程序很容易出问题。所以在测试国际化软件时,测试数据比如路径,文件名等最好选择这种包含5c,7c等特殊字符编码的文字。简体中文最好包含这个字 '奬',编码为0x8a5c.日文里面测试时最好用 表  (0x955c)等字符来作为测试输入。
其实测试过程中比较简单,只要知道这些包含5c或7c的文字怎么输入就可以了,测试时就用这些做为测试数据,不过你还是多看看字符集,编码,codepage等相关的东西,这个对全面理解国际化测试比较有好处,具体的我现在也不是特别清楚,目前还在学习中,
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2008-4-22 18:36:05 | 只看该作者
楼上说的很对. 你可以在WINDOWS下的程序->附件->系统工具->字符映射表中看见
0x5c  0x7c对应的字符,当然他们是UNICODE格式的. 这两个作为特殊字符.
在一些嵌入式系统中,是很容易出错的.甚至导致系统崩溃.
给个以前看的很简单的例子给你参考下
Many of the Asian code pages have multi-byte characters that have the second byte in the
ASCII range. These characters are known to break the products.
Here if one senario...

char *str = "ABCD表EF\XYZ" ;
Byte values...
A          B      C     D               表      E    F         \        X       Y        Z
0x41 0x42 0x43 0x44 0x95,0x5C 0x45 0x46 0x5C 0x58 0x59 0x5A

Notice the two bytes with values 0x5C. One is the second byte of the Japanese character and the other is the codepoint of backslash.
Say you want to separate this string at backslash. A non i18n compatible code like below...


char *ptr = src ;
while(*ptr++ == '\') { ...

will stop at the second byte of the Japanese character and any string truncation after that would corrupt your string. So if you use any of the troublesome character (Use link below) you have more chances of breaking the system.
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-5-29 16:29:24 | 只看该作者
例:
char overlaps with "@" (0x40)
如、鼻、法、論、蓮、院

Character        Code        Character        Code
如 (jyo)        9440        論 (ronn)        9740
鼻 (hana)        9540        蓮 (renn)        9840
法 (hou)        9640        院 (inn)        8940
这是一些日文,我们可以注意上面的 "@" (0x40)
那到下面那些日语字符在处理上必须要注意,否则会出现问题
那么这些字符就叫问题字符。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-5-4 15:14 , Processed in 0.067112 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表