紧急求教c语言下汉字的问题!!

leechsh 2001-07-21 11:43:42
我给朋友用c处理中文txt文本,遇到一个问题。

我本来是想找出'│'并将之过滤掉,'│'对应的ascii码是0xa9 0xa6
当前指针*(str+i)的值为0xa9,
可条件if(*(str+i)==0xa9)却为假,实在不知道出了什么问题,麻烦各位大哥帮忙看看,着急:(
...全文
69 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
leechsh 2001-07-22
  • 打赏
  • 举报
回复
寒鹤兄真是一语中的啊,多谢!!!!
yug 2001-07-21
  • 打赏
  • 举报
回复
问题出在str的类型是char*,所以*(str+i)= -87,当然不等于0xa9了.
你可以这样定义str:
unsigned char *str;
也可以在比较时做下处理:
if((unsigned char)*(str+i)==0xa9)
Zibao 2001-07-21
  • 打赏
  • 举报
回复
这说明当前值的确不是 0xa9 啊。你是怎么肯定它一定是 0xa9 的?

贴出代码片段看看。

SSTS 2001-07-21
  • 打赏
  • 举报
回复
半角和全角的时候不知道还是不是相同的。。。。。0xa9??

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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