有符号十六进制值在Mac和PC上的C程序上表现不同

时间:2013-06-24 20:59:20

标签: c serial-port hex arduino signed

我正在为Arduino Esplora编写一个显示加速度值的程序。我已成功在Mac上传输数据,但当我尝试在Windows机器上使用相同的程序时,通过串行连接传输的负值会出现乱码且无法使用。我检查了传输数据的各个字节,我已经确认它在两台机器上都是一样的。但是,为什么他们将它视为两个不同的价值观呢?

Value being transmitted = FFFFFF4d 
Actual value, as displayed on Mac = -179
Value being displayed on Windows = -32768

谢谢!

0 个答案:

没有答案