假设我们有一个整数数组1,2,3(最大可达36,所以每个数字不是一个数字),我想将文件命名为123 ... 36.txt。我会在旅途中这样做,因此,我需要根据int数组值
更改文件名我在网上查了一些解决方案,但都没有。有一个简单的解决方案吗?谢谢
int main(int argc, char **argv) {
int i;
FILE *ptr;
int b[3]={1,2,3};
char name[FILENAME_MAX];
for(i=0;i<3;i++) itoa(b[i],name[i],10);
name[3]='.';
name[4]='t';
name[5]='x';
name[6]='t';
name[7]='\0';
ptr = fopen(name, "w");
fclose(ptr);
return 0;
}
答案 0 :(得分:0)
最类似于您的算法的事情是使用数字来偏移0字符的ascii值。用这个替换你的itoa()行:
for(i=0;i<3;i++) name[i] = '0'+b[i];
这显然假定,正如您的代码所做的那样,传入的int值介于0和9之间。