gpt4 book ai didi

c++ - 如何让系统在十六进制数字之前打印 0x,在八进制数字之前打印 0?

转载 作者:行者123 更新时间:2023-12-02 00:55:05 25 4
gpt4 key购买 nike

我的老师说,对于作业,我们不允许在十六进制数字之前手动打印 0x,我们必须让系统这样做。

目前我的代码如下所示:

cout << "Hex" << setw(12) << hex << static_cast<int>(letter) << setw(12) << hex
<< number << setw(12) << hex << static_cast<int> (symbol) << endl;

它打印正确的十六进制值,但没有 0x。

此外,对于八进制数字,我必须再次让系统在数字前打印 0(不是手动)。我的代码打印正确的值,但没有前面的 0:

cout << "Octal" << setw(12) << setbase(8) << static_cast<int>(letter) << setw(12) << setbase(8)
<< number << setw(12) << setbase(8) << static_cast<int>(symbol) << endl;

最佳答案

使用std::showbase:

std::cout << std::hex << std::showbase << 1234567890;

关于c++ - 如何让系统在十六进制数字之前打印 0x,在八进制数字之前打印 0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58054105/

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