정수를 10 진수열에 변환한다


함수명
int2sz  정수를 10 진수열에 변환한다
형식
void int2sz(char *str, int num);
인수
str  (출력) 10 진수 ASCIZ 캐릭터 라인
num  (입력) 변환하고 싶은 정수
함수치
없음
주의 사항

용례(int2sz-test.c )
char str[15];
int2sz(str, 12345)

프로그램(int2sz.c )
void int2sz(char *str, int num)
{
    int i;
    static void rint2sz();

    i = 0;
    if (num < 0) {
        num = -num;
        *str = '-';
        i++;
    }
    rint2sz(str, num, &i);
    *(str + i) = '\0';
}

static void rint2sz(char *str, int num, int *off)
{
    int k;

    if ((k = num / 10) ! = 0) rint2sz(str, k, off);
    *(str + *off) = num % 10 + '0';
    (*off)++;
}
설명
재귀법을 사용. 선행의 숫자에 대해서는 자기 자신을 소환이라고 대응해, 최종자리수만을 변환해 처리한다.

관련 함수
정수를 2 진수열에 변환하는, 정수를 16 진수열에 변환하는, 2 진수열을 정수에 변환하는, 10 진수열을 정수에 변환하는, 16 진수열을 정수에 변환한다