\0。#include <stdio.h>
#include <string.h>
void int_to_str(int n, char *buf) {
int i = 0, sign = 0;
if (n < 0) { sign = 1; n = -n; }
do {
buf[i++] = '0' + (n % 10);
n /= 10;
} while (n > 0);
if (sign) buf[i++] = '-';
buf[i] = '\0';
// 反轉
for (int l = 0, r = i - 1; l < r; ++l, --r) {
char tmp = buf[l]; buf[l] = buf[r]; buf[r] = tmp;
}
}
int main() {
int n;
char str[32];
printf("輸入整數: ");
scanf("%d", &n);
int_to_str(n, str);
printf("字串: %s\n", str);
return 0;
}
do-while 確保 0 也能正確處理 (輸出 "0")。'0' + digit 將數值轉為 ASCII 字元。實務請用 sprintf(buf, "%d", n) 或 snprintf,安全且標準。