- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
CString convertInt2Str(int i_Number, int i_NumDigits)
{
CString str = "";
for(int j=1; j<i_NumDigits; j++)
{
int digits = (int) pow((float) 10, j);
if(i_Number<digits) str += "0";
}
CString num;
num.Format("%d", i_Number);
return str+num;
}
для нуля и отрицательных чисел будет некорректно
ну и для i_NumDigits > 9
str.Format("%%0%ud", i_NumDigits);
CString num;
num.Format(str, i_Number);
Во-вторых, если этот 'CString::Format' полностью поддреживает спецификаторы 'fprintf', то все делается еще проще
CString num;
num.Format("%.*d", i_NumDigits, i_Number);
http://codepad.org/9Fdbgsts