判断不可见的ASCII码值

zsqat 2005-01-13 09:29:54
我做了串口通讯程序,别人发送的字符串,以ASCII码值为0x02(STX)开始,以ASCII码值为0x03(ETX)结束,我现在要判断开始字符的ASCII码值是不是0X02(STX),结束字符ASCII是不是0X03(ETX)。我不知道怎样判断请各位高手指点指点!
曾经有人给我说是这样做
if(buffer[0]==0x02)我觉得这是和数值2(即ASCII码值0x32)作比较判断的,不对的!
在此先谢谢!
...全文
287 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Rex_love_Burger 2005-08-16
  • 打赏
  • 举报
回复
俺也学习
ssyfrank 2005-01-13
  • 打赏
  • 举报
回复
zsqat 2005-01-13
  • 打赏
  • 举报
回复
谢谢大家的指点!
Maconel 2005-01-13
  • 打赏
  • 举报
回复
if(buffer[0]==0x02)到底是和2比,还是和32比,楼主自己实际测试一下就知道了。
xrdsheng 2005-01-13
  • 打赏
  • 举报
回复
if(buffer[0]==0x02) //0x02就是ASCII码,代表一个的控制符
if(buffer[0]=='2') //和字符2比较,相当于if(buffer[0]==0x32)
samchoy 2005-01-13
  • 打赏
  • 举报
回复
if(buffer[0]==0x02)我觉得这是和数值2(即ASCII码值0x32)作比较判断的,不对的!

原来你是理解成这样啊,ASCII码值0x32的是字符'2',不是数字0x02
Maconel 2005-01-13
  • 打赏
  • 举报
回复
ASCII即数字,数字即ASCII。
char即int,int即char。
flowercity 2005-01-13
  • 打赏
  • 举报
回复
字符和数是不同的
ascii上的全是字符
int 就是 char
char 就是 int
字节和字符又是不同的
这个概念对串口通信是很重要的
hevensound 2005-01-13
  • 打赏
  • 举报
回复
学习
BeRoy 2005-01-13
  • 打赏
  • 举报
回复
if(buffer[0]==0x02)
应该就是两个整数比较。不是和ascii的0x32比较。

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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