كيفية إنشاء أسماء الملفات المخصصة في ج؟
سؤال
يرجى الاطلاع على هذه القطعة من التعليمات البرمجية:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main() {
int i = 0;
FILE *fp;
for(i = 0; i < 100; i++) {
fp = fopen("/*what should go here??*/","w");
//I need to create files with names: file0.txt, file1.txt, file2.txt etc
//i.e. file{i}.txt
}
}
المحلول
for(i = 0; i < 100; i++) {
char filename[sizeof "file100.txt"];
sprintf(filename, "file%03d.txt", i);
fp = fopen(filename,"w");
}
نصائح أخرى
يستخدم snprintf()
مع "file%d.txt" and
أنا لتوليد اسم الملف.
تفحص snprintf
.
char szFileName[255] = {0};
for(i = 0; i < 100; i++)
{
sprintf(szFileName, "File%d.txt", i);
fp = fopen(szFileName,"w");
}
هذا يجب أن يعمل:
for(i = 0; i < 100; i++) {
char name[12];
sprintf(name, "file%d.txt", i);
fp = fopen(name, "w");
}
لا تنتمي إلى StackOverflow