【发布时间】:2021-06-13 09:28:55
【问题描述】:
所以我正在尝试将整数数组转换为特定样式的字符数组。我想结束的是:
charArray[] = "084 438 038 002 093 249 168"
这是我在意识到每个 int 将超过 1 个字符之前开始的。
#include <stdio.h>
#include <stdlib.h>
void intToChar(int n, int numArray[], char charArray[]);
int main() {
int i;
int n = 7;
int numArray[] = {84, 438, 38, 2, 93, 249, 168};
char *charArray = (char*)malloc(sizeof(char) * (4 * n - 1);
intToChar(n, numArray, charArray);
for (i = 0; i < n; i++) {
printf("%c ", charArray[i]);
}
printf("\n");
return 0;
}
void intToChar(int n, int numArray[], char charArray[]) {
int i;
for (i = 0; i < n; i++) {
charArray[i] = numArray[i] + '0';
}
}
有没有办法将像 123 这样的 int 准确地转换为“123”?
【问题讨论】: