这不是我的代码的一个给定问题,但更确切地说是一个体面的大小快捷方式,如果这有效。
在我的C程序中,我有一些有数字值的文件(测试1,测试2等)所以我想知道在子句中:
fa = fopen("Test 02","r");
if (fa == NULL) {
printf("Failed to open defs\n");
getch();
exit(1);
}
do {
...
}
我可以这样做:
fa = fopen("Test %d Definitions.txt","r",count);
if (fa == NULL) {
printf("Failed to open defs\n");
getch();
exit(1);
}
do {
...
}
count=count+1;
我一直在想这个,因为它会将文件选择代码减少很多。
答案 0 :(得分:3)
您需要先创建文件名
char filename[256];
snprintf(filename, sizeof filename, "Test %d Definitions.txt", count);
fa=fopen(filename,"r");
..
答案 1 :(得分:0)
您可以使用sprintf
。 fopen
不是可变函数。它的原型是:
FILE * fopen ( const char * filename, const char * mode );
使用sprintf(filename, "Test %d Definitions.txt",count);
然后执行fopen(filename, "r");