반응형
리눅스에 없는 itoa 함수를 정의
void my_itoa(int n, char *st)
{
int count, i;
count=(int)(log10(n)+1);
for(i=count-1; i>=0; i--)
{
st[i]=(n%10)+'0';
n=n/10;
}
st[count]='\0';
}
void strreverse(char *begin, char * end)
{
char aux;
while(end>begin)
aux=*end, *end--=*begin, *begin++=aux;
}
void itoa(int value, char *str, int base)
{
static char num[]="0123456789abcdefghijklmnopqrstuvwxyz";
char *wstr=str;
int sign;
if(base<2 || base>35){
*wstr='\0';
return;
}
if((sign=value) <0)
value=-value;
do
*wstr++=num[value%base];
while(value/=base);
if(sign<0)
*wstr='\0';
strreverse(str, wstr-1);
}
반응형
'System Programmings > C' 카테고리의 다른 글
[C] open() (0) | 2011.09.23 |
---|---|
[C] Cygwin에서 ssl 사용하기 (0) | 2011.03.23 |
[C] 난수 생성 (0) | 2011.03.20 |
[C] getcputc.c - 파일 복사 및 문자열 복사 (0) | 2011.01.30 |
[C] ls.c - 현재 디렉토리의 파일 및 폴더 출력 (0) | 2011.01.30 |