【问题标题】:Advantage of initialization variable to Hexadecimal初始化变量对十六进制的优势
【发布时间】:2015-04-18 14:14:36
【问题描述】:

我正在研究一个用 c++ 编码的哈希函数,我想知道为什么主常量变量是用十六进制值初始化的。喜欢

unsigned long i= 0x428a2f98 ;

这样做是为了性能,如果是,请解释一下,因为我认为它在某个时候已经转换为整数值。

【问题讨论】:

  • 有时,例如在嵌入式系统上,分配的值是硬件设备的地址。嵌入式系统上的地址最好以十六进制形式查看。

标签: c++ hash sha256 hash-function


【解决方案1】:

源代码中定义的常量对性能没有任何作用,因为它会被编译器转换为二进制表示。它只是为了可读性而存在,例如二进制数据在十六进制中比十进制更容易解释。

【讨论】:

  • @alihamza 我已经说过可重复性了,不是吗?出于调试目的也无所谓,这也是编译时信息,如果你写int i = 0x10;int i = 16;,你在运行时不会看到任何差异。
猜你喜欢
  • 2016-02-01
  • 2014-11-13
  • 1970-01-01
  • 2014-07-31
  • 2013-07-22
  • 1970-01-01
  • 2017-11-26
  • 2018-12-06
  • 1970-01-01
相关资源
最近更新 更多