📅  最后修改于: 2023-12-03 14:39:57.089000             🧑  作者: Mango
ios
操纵器internal()
函数在C++中,ios
操纵器被用于控制标准输入输出流(istream
和ostream
)的格式和状态。internal()
是其中一个ios
操纵器函数,用于控制数值的对齐方式。
internal()
函数internal()
函数是std::ios::internal
操纵器的成员函数。它用于控制ostream
对象中输出数据时的数值对齐方式。使用internal()
函数后,输出的数值将始终采用内部对齐方式,即在字段宽度内右对齐,左侧填充空格。
下面是internal()
函数的使用语法:
std::ios_base& internal ( std::ios_base& str );
该函数接受一个名为str
的std::ios_base
对象的引用作为参数,并返回同一个对象的引用。
下面是一个示例代码,展示了internal()
函数的用法:
#include <iostream>
#include <iomanip>
int main() {
int num1 = 12345;
int num2 = -6789;
std::cout << "Default alignment:" << std::endl;
std::cout << std::setw(10) << num1 << std::endl;
std::cout << std::setw(10) << num2 << std::endl;
std::cout << "Internal alignment:" << std::endl;
std::cout << std::internal << std::setw(10) << num1 << std::endl;
std::cout << std::internal << std::setw(10) << num2 << std::endl;
return 0;
}
上述代码首先输出了默认对齐方式下的两个数值。然后使用std::internal
操纵器将对齐方式修改为内部对齐,再次输出相同的数值。运行上述代码,将得到如下输出:
Default alignment:
12345
-6789
Internal alignment:
12345
-6789
internal()
函数只对其后的第一个setw
生效,而不是全局生效。internal
操纵器后,如果再使用left
或right
操纵器,则对齐方式会被覆盖。参考文档:cppreference - ios