如何在C中解析uint16_t到int?

时间:2015-05-04 07:16:50

标签: c uint16

我获得了0x2c06的数据,就像0x2c06

对于2c06是第一个数据,0x2c06是第二个数据。

如何解析2c并将06lists()转为int?

提前致谢。

2 个答案:

答案 0 :(得分:0)

您可以使用char*和一些指针算术来完成此操作。

伪代码:

uint16_t var = 0x2c06;
unsigned char * temp = &var;

int first = *temp;               //or second, see note
int second = *(temp + 1);       // or first, see note

注意:您需要照顾endianness

答案 1 :(得分:-3)

构建一组case操作符转换uint并将其等同于,例如

switch(sizeof unsign) 

{

case sizeof (unsigned short int):

  int result = (unsigned short int)unsign;

  break;

default:

  fprintf (stderr, "recast of unit_16  failed.\n");

}

对不起,如果有错误,只需输入浏览器即可。