彬芬绚丽 发表于 2018-5-29 18:23:23

新手求助:写一个将整数转换成字符串的函数itoa。

写一个将整数转换成字符串的函数itoa。

人造人 发表于 2018-5-29 18:55:50

#include <stdio.h>

char *itoa(int value, char *buffer, int radix)
{
        char *p = buffer;

        while(value != 0)
        {
                int tmp = value % radix;
                if(tmp >= 10)
                        *p++ = (tmp - 10) + 'A';
                else
                        *p++ = tmp + '0';

                value /= radix;
        }
        *p = '\0';

        char *a = buffer;
        char *b = p - 1;
        while(a < b)
        {
                char tmp = *a;
                *a = *b;
                *b = tmp;
                ++a;
                --b;
        }

        return buffer;
}

int main(void)
{
        char buf;
        itoa(100, buf, 16);
        puts(buf);

        itoa(0xAA55, buf, 16);
        puts(buf);

        return 0;
}

helloxiaoc 发表于 2018-5-29 21:02:45

用宏,TOSTR(str) #str

人造人 发表于 2018-5-29 21:19:10

helloxiaoc 发表于 2018-5-29 21:02
用宏,TOSTR(str) #str

是这样吗?

彬芬绚丽 发表于 2018-5-29 21:25:17

helloxiaoc 发表于 2018-5-29 21:02
用宏,TOSTR(str) #str

还没学到宏{:

彬芬绚丽 发表于 2018-5-29 21:47:07

人造人 发表于 2018-5-29 18:55


很好,这个是指针吧,目前也没学到呢{:9_221:}

人造人 发表于 2018-5-29 22:17:13

彬芬绚丽 发表于 2018-5-29 21:47
很好,这个是指针吧,目前也没学到呢

那你问这个问题有什么意义呢?问了也理解不了?

继续往后学吧,学到后面就理解了

彬芬绚丽 发表于 2018-5-30 16:51:26

人造人 发表于 2018-5-29 22:17
那你问这个问题有什么意义呢?问了也理解不了?

继续往后学吧,学到后面就理解了

这个是模块化程序设计的课后习题{:9_234:}
页: [1]
查看完整版本: 新手求助:写一个将整数转换成字符串的函数itoa。