<分区>
这里发生了什么?
long long value;
value = 001111011112;
在Visualstudio调试中,显示值为153358922。
如果数字不是以 0 开头,则一切正确...
关于如何继续使用我的初始化样式有什么建议吗?
标签 c++
<分区>
这里发生了什么?
long long value;
value = 001111011112;
在Visualstudio调试中,显示值为153358922。
如果数字不是以 0 开头,则一切正确...
关于如何继续使用我的初始化样式有什么建议吗?
最佳答案
在 C++ 中,以 0
开头的数字是八进制(以 8 为底)文字。
如果你想用前导零打印这个值,你可以这样做:
long long value;
value = 1111011112;
cout << setw(12) << setfill('0') << value;
关于c++ - 使用从 0 开始的值初始化 long long 会导致奇怪的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51500962/