21xrx.com
2024-11-05 19:39:19 Tuesday
登录
文章检索 我的文章 写文章
C++如何在一个数前面加0?
2023-07-09 05:02:01 深夜i     --     --
C++ 数值格式化 填充字符 std::setw() std::setfill()

在C++中,我们可以使用一些技巧来在一个数前面加上0,从而使其达到我们想要的输出效果。这种技巧通常被称为“填充”,因为我们在数字到达一定长度之前,需要用0来填充数位。

下面是介绍两种常用的方法:

1. 使用iomanip库中的setw()函数:

使用这种方法,我们可以设置输出的宽度,从而对数字进行填充。在头文件中包含 以便可以使用这个函数。例如要输出一个代表月份的数字,如果月份小于10,则在月份前面添加一个0:


#include <iostream>

#include <iomanip>

using namespace std;

int main() {

  int month = 7;

  cout << "月份:" << setw(2) << setfill('0') << month << endl;

  return 0;

}

在上面的代码中,setw()函数指示输出宽度的大小为2,setfill('0')函数指定要用来填充的字符为0。输出结果为:


月份:07

2. 格式化输出:

第二种方法是通过使用格式化输出来对数字进行填充。对于这种方法,我们必须使用iostrea头文件中的ostringstream库。代码如下:


#include <iostream>

#include <string>

#include <sstream>

using namespace std;

string addZero(int num) {

  ostringstream oss;

  oss << setw(2) << setfill('0') << num;

  return oss.str();

}

int main() {

  int month = 7;

  cout << "月份:" << addZero(month) << endl;

  return 0;

}

在上面的代码中,首先定义了一个名为addZero()的函数,它使用ostringstream库将数字转换为字符串,并在其前面填充0。最后,我们在主函数中调用addZero()函数并输出结果。输出结果为:


月份:07

这两种方法非常有效和方便。无论您选择哪种方法,都可以轻松地在C++中对数字进行填充。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复
    相似文章