[Basic C++] cout对齐输出

ㄧ、问题描述

如果要cout像以下这样的格式时,该怎么做呢?
http://img2.58codes.com/2024/20159955OojmHeWPnz.png

这样的cout困难点在于:数字跟字串长度不固定。
这样导致第二行最后面的"="难以对齐

二、解法如下:

设一个counter,记录每个字串的长度


int counter = 0;

对于字串,counter加上字串的长度

string name = "AIG";counter += name.length();

对于数字,先经过std::to_string( ),再加上其长度

int id = 19;string s_id = std::to_string(id);counter += s_id.length();

最后在输出line: 的时候,做setw( )跟right的配合

int lineNo = 200;string s_lineNo = std::to_string(lineNo);cout << setw(38-counter) << right << s_lineNo;

最后就可以输出=啦!

cout << "=" << endl;

希望这个内容可以帮助你们对于一些不简单的os输出格式有不同的想法。感谢收看!


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章