gpt4 book ai didi

c++ - 为什么在 C++ 中将整数初始化为 010 与将其初始化为 10 不同?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:49:21 26 4
gpt4 key购买 nike

当一个整数被初始化为int a = 010时,a实际上被设置为8,但是对于int a = 10a 设置为 10。谁能告诉我为什么 int a = 010a 没有设置为 10?

最佳答案

因为它将 010 解释为 octal 格式的数字。在 base-8 系统中,数字 10 等于 base-10(我们的标准计数系统)中的数字 8

更一般地说,在 C++ 的世界中,用 0 作为整数文字的前缀指定一个八进制文字,因此编译器的行为完全符合预期。

关于c++ - 为什么在 C++ 中将整数初始化为 010 与将其初始化为 10 不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6359418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com