我想将基数[[n的数字x转换为字符串并将其存储在str中。 str的最大大小为max。在此程序中,我不想使用任何库函数。如果达到数组的最大大小,该函数应返回false,并且数组内容应为未定义。
该函数的原型如下:bool num2str(int x, char *str, unsigned n, unsigned max);
我将如何进行这项工作?我无法理解其背后的算法。的值,但是我已经这样做了:我还需要检查
n
bool num2str(int x, char *str, unsigned n, unsigned max)
{
assert(n >= 2 && n <= 36);
return true;
}
但是那是我所能做的。请帮助。
123456 mod 10 = 6
123456 div 10 = 12345
12345 mod 10 = 5
12345 div 10 = 1234
如您所见,模数除以基数将提取最后一位,而整数除以基数将使数字右移。您可以对任何基础执行相同的操作。希望这个提示足够。