C语言实现整数转化为字符串
转化函数
整数转化为字符串
char *int_to_str(int x, char *str) {
char ch, *p;
int sign = 0, r;
p = str;
if (x < 0) { //处理负数
sign = 1;
x = -x;
}
while (x > 0){ //取余实现倒序
r = x % 10;
x = x / 10;
*p = 48 + r;
p++;
}
if (sign == 1)
*p++ = '-';
*p = '\0';
return str_reverse_arr(str); //将字符串逆序得到原先顺序
}
//字符串逆置(数组)
char *str_reverse_arr(char *s) {
char t;
int low = 0, high = strlen(s) - 1;
while (low < high) {
t = s[low];
s[low] = s[high];
s[high] = t;
low++;
high--;
}
return s;
}
main函数
int main() {
char ch[40];
int x = -16651623;
printf("x = %d\n", x);
printf("ch = ");
puts(int_to_str(x, ch));
return 0;
}