例如,4位数字,将0转换为“0000”;和 12 到“0012”。
c++中有什么好的方法吗?
抱歉没有说清楚,我的编译器不支持 snprintf,我想要一个类似的函数
std::string ToString(int value, int digitsCount);
char buf[5];
snprintf(buf, sizeof(buf), "%04d", intVal);
也许是这样的
#include <iostream>
#include <iomanip>
#include <sstream>
using namespace std;
string ToString(int value,int digitsCount)
{
ostringstream os;
os<<setfill('0')<<setw(digitsCount)<<value;
return os.str();
}
int main()
{
cout<<ToString(0,4)<<endl;
cout<<ToString(12,4)<<endl;
}