主要的实现的是把int型改为string型..
核心使用的函数是sprintf.. 但是这个函数会有问题故由sprintf_s取代..
代码如下
#include <iostream>
#include <string>
int main() {
int num = 1;
std::cout << num << std::endl;
std::cout.fill('0');
std::cout.width(5);
std::cout << num << std::endl;
// std::cout << " After sprintf_s : " << num << std::endl; // 这样没有效果
char ch[20];
sprintf_s(ch, "%05d", num);
std::string str = ch;
std::cout << " str : " << str << std::endl;
return 0;
}
输出结果:
1
00001
str : 00001
其实还是会存在问题 就是char ch[20]是一个定长数组..
有大神知道更好的办法希望肯赐教!