Advertisement

格式化输入输出 cin.width()&cout.width()

阅读量:

cin.width与cout.width成员函数解析

cin.width(n); 用于设定输入 的宽度(默认情况下为左对齐)

运行机制

当采用char[]作为字符串时,系统会将整个字符串读取并 划分为多个字符块,每个字符块的长度被设定为n-1个字符。对于符合该长度要求的字符块,若其中某个字符块的字符数量少于n-1个,则 由于宽度不足而缺少的部分将通过空格进行填充

若使用string类型作为字符串,则每个字符块的长度被设定为n个字符,无需再减去1

复制代码
    void WidthIN()
    {
    	int width = 4;
    	char str[20];
    	cout << "请输入一段文本: \n";
    	cin.width(width);	//设置接受width个字符  为控制输入宽度   
    	while (cin >> str) //cin缓冲区中的字符循环流入str字符串中
    	{
    		cin.width(4);	//设置接收width-1个字符  为控制输入宽度   
    		cout << str << endl;	//输出str  
    		cout <<"数组长度为"<< strlen(str) << endl;//输出每

全部评论 (0)

还没有任何评论哟~