找回密码
 中文实名注册
查看: 214|回复: 0

C++ setw() 函数

[复制链接]

694

主题

1080

帖子

2万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
22786
发表于 2022-6-30 08:17:17 | 显示全部楼层 |阅读模式
C++ setw() 函数用于设置字段的宽度,语法格式如下:

[C++] 纯文本查看 复制代码
setw(n)

n 表示宽度,用数字表示。
setw() 函数只对紧接着的输出产生作用。
当后面紧跟着的输出字段长度小于 n 的时候,在该字段前面用空格补齐,当输出字段长度大于 n 时,全部整体输出。
以下实例演示了 setw() 函数的使用:

[C++] 纯文本查看 复制代码
#include <iostream>
#include <iomanip>

using namespace std;

int main()
{
    // 开头设置宽度为 4,后面的 runoob 字符长度大于 4,所以不起作用
    cout << setw(4) << "runoob" << endl;
    // 中间位置设置宽度为 4,后面的 runoob 字符长度大于 4,所以不起作用
    cout << "runoob" << setw(4) << "runoob" << endl;
    // 开头设置间距为 14,后面 runoob 字符数为6,前面补充 8 个空格
    cout << setw(14) << "runoob" << endl;
    // 中间位置设置间距为 14 ,后面 runoob 字符数为6,前面补充 8 个空格
    cout << "runoob" << setw(14) << "runoob" << endl;
    return 0;
}
以上代码输出结果为:

runoob
runoobrunoob
        runoob
runoob        runoob


setw() 默认填充的内容为空格,可以 setfill() 配合使用设置其他字符填充。
[C++] 纯文本查看 复制代码
#include <iostream>
#include <iomanip>

using namespace std;

int main()
{
    cout << setfill('*')  << setw(14) << "runoob" << endl;
    return 0;
}
以上代码输出结果为:

********runoob

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?中文实名注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 中文实名注册

本版积分规则

小黑屋|东台市机器人学会 ( 苏ICP备2021035350号-1;苏ICP备2021035350号-2;苏ICP备2021035350号-3 )

GMT+8, 2024-4-19 22:53 , Processed in 0.044812 second(s), 29 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表