C将十六进制转换为十进制格式

C将十六进制转换为十进制格式,第1张

概述使用 gcc在 linux上编译. 我想将其转换为十六进制. 10这将是一个. 我设法做到这一点将下面的代码. unsigned int index = 10;char index_buff[5] = {0};sprintf(index_buff, "0x%x", index);data_t.un32Index = port_buff; 但问题是我需要将它分配给一个结构 我需要分配的元素是u 使用 gcc在 linux上编译.

我想将其转换为十六进制. 10这将是一个.
我设法做到这一点将下面的代码.

unsigned int index = 10;char index_buff[5] = {0};sprintf(index_buff,"0x%x",index);data_t.un32Index = port_buff;

但问题是我需要将它分配给一个结构
我需要分配的元素是unsigned int类型.

但这有效:

data_t.un32index = 0xa;

但是,我的示例代码不起作用,因为它认为我试图转换
从字符串到unsigned int.

我试过这个,但这也失败了

data_t.un32index = (unsigned int) *index_buff;

非常感谢任何建议,

解决方法 咦?如果您在变量中有值,则十进制/十六进制无关紧要.做就是了

data_t.un32index = index;

十进制和十六进制只是打印数字时的符号,因此人们可以阅读它们.

对于C(或C,或Java,或其中这些类型为“基元”的语言中的任何一种,其语义与机器寄存器的语义非常匹配)整数变量,它所拥有的值永远不能说是“十六进制” .

该值保存在二进制文件中(在所有典型的现代电子计算机中,本质上是数字和二进制的)在内存或寄存器中备份变量,然后您可以生成各种字符串表示,这时您需要选择一个基数到使用.

总结

以上是内存溢出为你收集整理的C将十六进制转换为十进制格式全部内容,希望文章能够帮你解决C将十六进制转换为十进制格式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/langs/1223127.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存