【问题标题】:Why are my array values changing? [duplicate]为什么我的数组值会发生变化? [复制]
【发布时间】:2015-10-29 01:14:59
【问题描述】:

我正在尝试初始化一个 int 数组,但是当我返回引用它时,我的值会发生变化,如您所见 here。例如,我的值 {010, 011} 正在更改为 {8,9}。谁能告诉我为什么会这样?提前谢谢!

【问题讨论】:

  • 如果没有您的代码,他们就不能,而且我不会去“场外”查看您的代码。
  • 您是否要存储二进制值?松开前导 0

标签: c++ arrays initialization


【解决方案1】:

以零开头的数字被编译器视为八进制。

八进制的010是8。

也许只需使用10 来初始化这些值。

【讨论】:

  • 不知道,谢谢!
【解决方案2】:

通过在 10 前加上 0,您是在告诉编译器它是一个八进制数(以 8 为基数)。要解决这个问题,只需将您的值初始化为 {10,11}

【讨论】:

    猜你喜欢
    • 2021-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-31
    • 1970-01-01
    • 2017-11-09
    • 1970-01-01
    • 2019-07-27
    相关资源
    最近更新 更多