setbase(8)和std :: cout<

时间:2011-01-11 16:29:26

标签: c++ iomanip

std::cout<<std::setbase(8)<<32;std::cout<<std::oct<<32;之间的差异是否相同?

而且,std::cout.oct ??

的目的是什么?

1 个答案:

答案 0 :(得分:1)

std :: oct 将str流的基本域格式标志设置为oct。

std :: setbase 将基本域格式标志设置为其可能的值之一:hex,dec或oct,具体取决于基本参数的值。

我认为最大的区别是setbase接受一个参数,所以你可以传递一个包含你想要的数字基数的变量。而不是使用一堆if语句来检查变量并使用dec,oct或hex。

虽然我不确定std :: cout.oct。