C++ 为什么在C++;是否显示为不设置指定的标志? #包括 #包括 使用名称空间std; int main(){ int x=44; cout
参考,您应该首先清除所有格式标志 在表达式out中使用时> resetiosflags(掩码),清除流输出或输入的所有格式标志 按照遮罩的规定 写这样的东西C++ 为什么在C++;是否显示为不设置指定的标志? #包括 #包括 使用名称空间std; int main(){ int x=44; cout,c++,C++,参考,您应该首先清除所有格式标志 在表达式out中使用时> resetiosflags(掩码),清除流输出或输入的所有格式标志 按照遮罩的规定 写这样的东西 #include <iostream> #include <iomanip> using namespace std; int main() { int x = 44; cout << setiosflags(ios::oct) << x; } cout因为您只直接设置一
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int x = 44;
cout << setiosflags(ios::oct) << x;
}
cout因为您只直接设置一个标志,而不是设置std::ios\u base::oct
标志:
cout << std::resetiosflags(std::ios_base::dec) << setiosflags(ios_base::oct) << x;
std::cout如果您看到,例如,您将看到示例首先调用。您尝试过了吗?因为您只设置了一个标志,所以应该使用:cout我可以参考前面提到的链接,但重置后为什么会起作用?如果它以前是十六进制呢?那么您可以使用std::ios_base::basefield
std::cout << std::oct << x;