- 论坛徽章:
- 0
|
用static是为了demo简单,呵呵
const char* num_to_str(unsigned int num, size_t radix)
{
static char buf[1024];
char *pstr = buf + sizeof(buf) - 1;
*pstr = 0;
do{ *--pstr = "0123456789ABCDEF"[num%radix]; }while((num /= radix));
return pstr;
}
const char* num_to_str(signed int num, size_t radix)
{
static char buf[1024];
bool neg = num < 0 ? num = -num : num;
char *pstr = buf + sizeof(buf) - 1;
*pstr = 0;
do{ *--pstr = "0123456789ABCDEF"[num%radix]; }while((num /= radix));
if(neg)*--pstr = '-';
return pstr;
}
[ 本帖最后由 Solidus 于 2008-8-12 10:00 编辑 ] |
|