首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

求帮助,数据正确显示,

2012-05-11 
求帮助,数据正确显示,在线等!//读串口数据moveto(7,1)putstr(接收:)for(i0i10i++)if(comstate()){

求帮助,数据正确显示,在线等!
//读串口数据 
moveto(7,1);putstr("接收:");
for(i=0;i<10;i++)
if(comstate())  
{ s[0]=combuf();moveto(7,6);s[0]='0'+(s[0]>>4);putch(s[0]);s[1]='0'+(s[0]&0x0F);putch(s[1]);}
k=key(0); if(k==KEY_CLS) return 0; 

从combuf得到一个十六进制数,但要在一个下设备上字符显示,想要分离这个十六进制数的各位,s[0],s[1]相当于高位和低位,但显示还是不对,如发送 86 得到88 发送43 得打44,只能得到高位字节,请教各位大虾,为什么

[解决办法]
你都修改了s[0]的值了,怎么还把它用作原值呢?

C/C++ code
moveto(7,1);putstr("接收:");unsigned char stmp;for(i=0;i<10;i++)if(comstate())   { s[0]=combuf();stmp = s[0]; moveto(7,6);s[0]='0'+(s[0]>>4);putch(s[0]);s[1]='0'+(stmp&0x0F);putch(s[1]);}k=key(0); if(k==KEY_CLS) return 0; 

热点排行