之前有朋友问我如何用C语言写一个循环输出一个字符串,大概类似于sr0000,sr0001到sr9999,这样的字符串.最开始我想到的是format 格式化方法,比如boost中的MFC,QT基本都有这个方法.
考虑到他们不一定用那个类库,所以就行有没有标准库就能实现的方法.C++20以后似乎有了format.但是C++20也没有普及,就用最简单的C++语法写一个算了.
开始给他写了一个个人认为比较low.今天没事就再写一个稍微好看一点的把.
这个就比较简单了.
- #include
- #include
- #include
- using namespace std;
-
- int main()
- {
- int num = 10000;
- string str = "sr";
- stringstream ss;
-
- for (int i = 0; i < num; ++i)
- {
- ss << setw(4) << setfill('0') << i; //设置前面补几个零的
- string str1 = str + ss.str();
- cout << str1 << endl;
- ss.str(""); //这个函数是清除字符串流的, ss.clear();这个函数是清除不掉字符串流的,没用
- }
- }
