blob: f53dcfb80e2e665e56a3338d365de4457c063b42 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include <string.h>
static char *num="0123456789abcdefghijklmnopqrstuvwxyz";
int __lltostr(char *s, int size, unsigned long long i, int base, char UpCase)
{
char *tmp;
int j=0;
s[--size]=0;
tmp=s+size;
if ((base==0)||(base>36)) base=10;
j=0;
if (!i)
{
*(--tmp)='0';
j=1;
}
while((tmp>s)&&(i))
{
tmp--;
*tmp=num[i%base];
if ((UpCase)&&(*tmp>96)) (*tmp)-=' ';
i=i/base;
j++;
}
memmove(s,tmp,j+1);
return j;
}
|