为什么当我在整数左边输入零时,c ++ borland编译器会改变整数值?

时间:2014-04-21 19:52:04

标签: c++

这段代码,当我在C ++ Borland编译器5.02上运行时

#include<iostream.h>
void main()
{
    int x;
    cin>>x;  
    cout << x;
}

输入0010x时,输出为8?对于一些左边有零的条目,但不是全部的条目?

1 个答案:

答案 0 :(得分:5)

在C ++中:

  • 八进制数字具有前导0
  • 十六进制数字具有前导0x
  • 否则,您有一个十进制数字。

因此:

  • 0x10是一个十六进制数,代表16。
  • 010是一个代表8的八进制数字。
  • 10是一个十进制数,代表10。