歡迎指點(╹▽╹)
void itoa_1(long long number, char* string, int real)//正負數都可以
{
long long tem = number;
int residual = 0;
if (number < 0)
number = (-number);
char* p = string + 95;//将指針指向數組尾部,預設是96位的
do {
residual = number % real;//求餘數
number = number / real;//求商
if (residual > 9)//如果大于9
{
*p-- = (char)(residual - 10 + 'a');
}
else
{
*p-- = (char)(residual + '0');
}
} while (number > 0);
if (tem < 0)//如果所求值位負數,則執行以下代碼
{
for (int i = 0; i < 96; i++)
{
if (string[i] == '0')
string[i] = '1';
else
string[i] = '0';
}
string[95] = (char)(string[95] + 1);
for (int j = 95; j > 0; j--)
{
if (string[j] == '2')
{
string[j] = '0';
string[j - 1] = (char)(string[j - 1] + 1);
}
else
break;
}
string[0] = '1';
}
}