سلام.من میخوام یه تابع برای تبدیل عدد چند رقمی به کاراکتر بنویسم.مثلا به ازای عدد ۸۷۵ مقدار کاراکتری اون رو بر گردونه.میشه روش تبدیل رو توضیح بدین.
نمایش نسخه قابل چاپ
سلام.من میخوام یه تابع برای تبدیل عدد چند رقمی به کاراکتر بنویسم.مثلا به ازای عدد ۸۷۵ مقدار کاراکتری اون رو بر گردونه.میشه روش تبدیل رو توضیح بدین.
رقم ها رو یکی یکی جدا میکنی بعد تبدیل به کارکتر می کنی. تبدیل به کارکتر کردن هم از طریق حدول اسکی اعداد است.
من همین امروز نوشتم برای با Keil و ARM-gcc کار میکنه
سعی کردم بهینه باشه ، از دوستان کسی باز هم پیشنهاد داشت بگه
برای کامپایلر دیگه فقط باید "uint16_t" و "uint32_t" را عوض کنی مثلا بزاری int
[PHP]void itoa(int num, char str[]) {
//this function convert integer to string - str[] must have enough space
int len = 0;
int num_tmp;
num_tmp = num;
//for negative number
if (num_tmp < 0) {
num_tmp = -num_tmp;
str[0] = '-';
len++;
}
//Find length of int Number
do {
len++;
num_tmp /= 10;
} while (num_tmp);
//return absolute number
if (num > 0)
num_tmp = num;
else
num_tmp = -num;
//store to string
str[len] = 0;
do {
len--;
str[len] = num_tmp % 10 + '0';
num_tmp /= 10;
} while (num_tmp);
}[/PHP]