1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-24 00:35:39 +03:00

Improve readability of itoa and _i2a type conversion methods.

This commit is contained in:
Dominic Clifton 2014-09-15 03:21:43 +01:00
parent 460256cc23
commit 9d4bc1aaa0

View file

@ -122,23 +122,23 @@ char a2i(char ch, char **src, int base, int *nump)
** Code from http://groups.google.com/group/comp.lang.c/msg/66552ef8b04fe1ab?pli=1 ** Code from http://groups.google.com/group/comp.lang.c/msg/66552ef8b04fe1ab?pli=1
*/ */
static char *_i2a(unsigned i, char *a, unsigned r) static char *_i2a(unsigned i, char *a, unsigned base)
{ {
if (i / r > 0) if (i / base > 0)
a = _i2a(i / r, a, r); a = _i2a(i / base, a, base);
*a = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"[i % r]; *a = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"[i % base];
return a + 1; return a + 1;
} }
char *itoa(int i, char *a, int r) char *itoa(int i, char *a, int base)
{ {
if ((r < 2) || (r > 36)) if ((base < 2) || (base > 36))
r = 10; base = 10;
if (i < 0) { if (i < 0) {
*a = '-'; *a = '-';
*_i2a(-(unsigned) i, a + 1, r) = 0; *_i2a(-(unsigned) i, a + 1, base) = 0;
} else } else
*_i2a(i, a, r) = 0; *_i2a(i, a, base) = 0;
return a; return a;
} }