C语言实现数组转字符串:不使用库函数将十六进制数组转换为逗号分隔字符串
#include <stdio.h>
void arrayToString(int arr[], int size, char str[]) { int i; for (i = 0; i < size; i++) { int num = arr[i]; int digits = 0; int temp = num;
// 计算数字的位数
while (temp != 0) {
digits++;
temp /= 10;
}
// 将数字转换为字符串
int j;
for (j = digits - 1; j >= 0; j--) {
str[i * (digits + 1) + j] = num % 10 + '0';
num /= 10;
}
// 添加逗号分隔符
if (i != size - 1) {
str[i * (digits + 1) + digits] = ',';
}
}
// 添加字符串结束符
str[size * (digits + 1) - 1] = '\0';
}
int main() { int arr[] = {0x11, 0x13, 0x15}; int size = sizeof(arr) / sizeof(arr[0]); char str[2 * size + 1];
arrayToString(arr, size, str);
printf("%s\n", str);
return 0;
}
原文地址: http://www.cveoy.top/t/topic/pYj7 著作权归作者所有。请勿转载和采集!