我的老师说在作业中,我们不允许手动在十六进制数字前添加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;