void CStringEx::PutInt(int i, int len) { if(len>0) itoan(GetBuffer(len),i,len); else if(i<0) len=8; else { if(i>999999999) len=10; else if(i>99999999) len=9; else if(i>9999999) len=8; else if(i>999999) len=7; else if(i>99999) len=6; else if(i>999) len=5; else if(i>99) len=4; else if(i>9) len=3; else len=2; itoan(GetBuffer(len),i,len); } ReleaseBuffer(len); }
int main(int argc, char **argv) { char buf[BUFLEN]; int i; unsigned base; i = (argc > 1) ? atoi(argv[1]) : 0; base = (argc > 2) ? (unsigned)atoi(argv[2]) : 10; printf("i:%s\n", itoan(i, buf, BUFLEN, base)); #ifdef NEED_UNSAFE_ITOA printf(" :%s\n", itoa(i, buf, base)); #endif return 0; }