串口接受的十六进制数据如何赋值给int型的变量呢

我定义一个int变量 int h=0;接受的一个串口数据为WPARAM ch,我想把这个ch赋值给h,h=(int)ch;这样为什么不可以呢,也就是我想要把接受到的00变为int型的0,01变为1 应该怎么转换呢

4个回答

通过串口,你最好先将数字转成字符串,如 0 转成字符串“0”再发送。
接收方,收到到字符串“0”后,使用 atoi 再转成数字后,赋值给 h .

你用的什么编译器?我用vc2010编译可以通过。

qq_27183003
ysuwood 你说的不可以是什么意思?编译没通过?是控制台程序?
接近 5 年之前 回复
baidu_31083567
java-flash 我的就是vs2010呀
接近 5 年之前 回复

我也觉得可以,你输出下wparam,是不是没有获取到值

试试sprintf()函数

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐