c++ - 相同数的模返回不同的结果

标签 c++

int a=032302;
cout<<a%10<<endl; // output 6
int b=32302;
cout<<b%10<<endl;  // output 2

我试图获取数字的单位位置,但在编码时我发现了一件奇怪的事情,第一个和第二个 no 在技术上是相同的,但是它们都输出不同的结果。

第一个返回 6 而第二个返回 2 ,我在这里遗漏了什么吗?

最佳答案

在 c/c++ 中以 0(零)开头的数字表示它是八进制(基数为 8)的数字。因此 032302 是十进制的 13506。因此,最后一位数字是 6,这就是您从模数运算中得到的结果。

关于c++ - 相同数的模返回不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43373219/

相关文章:

c++ - 从 getline 读取到非空字符串时出现意外输出

c++ - CreateProcess 和 ShellExecute 的区别

c++ - 派生类中的相同方法但具有不同的参数

c++ - 如何在 C++ 的 map 映射中使用 cout 探测特定值

c++ - while循环中的QSerialPort?

c++ - 如何从 bool 结果中获取全 1 或全 0?

c++ - 在哪里可以找到 Linux 中触摸屏显示器的最大分辨率?

c++ - C++中如何区分有理数和无理数

c++ - 在不同的操作系统中编译/执行代码有区别吗?

c++ - 序列化远程命令的好方法是什么?