ttsky138 发表于 2015-4-16 00:24:22

decodeInt16参数问题

decodeInt16((const char *)5, &data_len); 这里的5怎么理解呢?

Snail 发表于 2015-4-16 10:45:10

你好,
       这个函数的原型是:
       int decodeInt16(const char *input, short *output)
{
    *output = (short)(input << 8 | (input & 0xFF));
    return 2;
}
作用是把传参1的值第1、2字节做解析,即第1字节作高位,第2字节作低位,转化为一个字(16位),并赋给第2个传参作为输出。

(const char *)5:这里把常数5强制转化成这个地址,从这个地址取第1、2个字节,可以这样用,但不建议。另我们公版的工程没有这样用,是客户自己的写法。
页: [1]
查看完整版本: decodeInt16参数问题