对于C编程语言,C ++中的int i = 00100错误

时间:2014-05-21 14:11:12

标签: c int turbo-c++

我是一名不成熟的C程序员。我只能使用C编程语言。

我在TC ++ IDE中有一个包含循环的代码。 这是连续打印的简单代码。直到给定值, 它包含这样的东西:
i = 00100

在上面的行中,当我输入00100时,正常整数值的颜色会发生变化。(它变为深蓝色/深蓝色)

当我在循环中使用它时。而不是重复100次,它只重复#34; 64"倍。 任何值都是如此,如023而不是0f 23。 请解释什么类型的IDENTIFIER / Variable是00100或类似的值。 并解释为什么会这样呢? (64而不是100)。

高级问候并感谢您!

2 个答案:

答案 0 :(得分:2)

这是因为以零开头的数字文字被解释为用octal写的数字。

答案 1 :(得分:2)

以0开头的数字文字在C中被解释为八进制数,而八进制中的100是十进制的64,这解释了您所观察到的内容。