📅  最后修改于: 2023-12-03 15:14:03.068000             🧑  作者: Mango
在C++中,我们有三个用于格式化输出的函数——std::setbase,std::setw,std::setfill。这些函数可以用于指定输出的进制,字段宽度和填充字符。
std::setbase用于指定输出的进制。常见的进制有十进制、十六进制和八进制。默认情况下,C++使用十进制输出。
用法如下:
cout << std::setbase(进制) << 数值;
其中,进制可以是std::hex(十六进制)、std::oct(八进制)或std::dec(十进制)。
示例代码:
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int x = 123;
cout << std::dec << x << endl; // 十进制
cout << std::hex << x << endl; // 十六进制
cout << std::oct << x << endl; // 八进制
return 0;
}
输出:
123
7b
173
std::setw用于指定输出的字段宽度。默认情况下,输出宽度是不确定的。
用法如下:
cout << std::setw(宽度) << 内容;
示例代码:
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int x = 123;
cout << std::setw(10) << x << endl; // 宽度为10
return 0;
}
输出:
123
std::setfill用于指定输出的填充字符。默认情况下,输出的填充字符是空格。
用法如下:
cout << std::setfill(填充字符) << std::setw(宽度) << 内容;
示例代码:
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int x = 123;
cout << std::setfill('0') << std::setw(10) << x << endl; // 宽度为10,填充字符为0
return 0;
}
输出:
0000000123
以上就是std::setbase,std::setw和std::setfill的用法介绍。它们可以帮助我们更好地控制输出格式,让输出更加美观和易读。