【发布时间】:2010-10-15 04:11:39
【问题描述】:
使用 gcc 在 linux 上编译。
我想将其转换为十六进制。 10 这将是一个。 我已经设法通过下面的代码做到这一点。
unsigned int index = 10;
char index_buff[5] = {0};
sprintf(index_buff, "0x%x", index);
data_t.un32Index = port_buff;
但是,问题是我需要将它分配给一个结构 并且我需要分配的元素是一个无符号的 int 类型。
但是这可行:
data_t.un32index = 0xa;
但是,我的示例代码不起作用,因为它认为我正在尝试转换 从字符串到无符号整数。
我试过了,但也失败了
data_t.un32index = (unsigned int) *index_buff;
非常感谢您的建议,
【问题讨论】: