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

问一个类型转换的有关问题

2012-04-03 
问一个类型转换的问题我在通过串口发数据的时候比如byte ZwX[11],ZwY[11]ZwX[11]0x01ZwY[11]0x02如果

问一个类型转换的问题
我在通过串口发数据的时候
比如byte ZwX[11],ZwY[11];
ZwX[11]=0x01;
ZwY[11]=0x02;
如果我现在的数据是X坐标,Y坐标,比如:
X=25;
Y=87;
我怎么转换成Hex发送出去呢?
IntToHex转换成是AnsiString类型的,不行
我又(Byte),(unsigned)都不行


[解决办法]

X=25;Y=87; 在内存里是数值,不明白还区分什么十进展,十六进制。

ZwX[0]=25; ZwY[1]=87; 发送ZwX[0; ZwY[1]; 不就行了。

IntToHex转换成是AnsiString表示成字符串类型好像是给我们视觉上看数值是多少。

难道你说的0x02,把'0'和'2'发生出去?




[解决办法]
这串口发数据10进制和16进制有什么区别?又不是BCD码
你就把25发过去,只要接收方以16进制显示,它自然会显示19h
[解决办法]

unsigned、int char 都可以发送
最终都是以byte送出去的,
你就直接发byte的数组就行了
[解决办法]
你这个坐标的取值范围是多少,如果0-255完全可以用一个byte搞定,如果大于这个数值就要转换一下,用多个字节了

热点排行