Открытие файлов с именем, составленным из переменных - C (СИ)

Узнай цену своей работы

Формулировка задачи:

вводится диапазон дат, который начинает открывать файлы типа "

t_130917_01.dat

", а затем накручивает переменные счетчиком нужно открывать файл, имя которого составляется из нескольких

int

и

текста

попробывал сделать так:
#include <stdio.h>
#include <conio.h>
#include <string.h>
int main(void)
{ char ch,*name; int god1,mes1,den1,chas1,god2,mes2,den2,chas2;
FILE *ipf, *stf; 
scanf("%d%d%d%d",&god1,&mes1,&den1,&chas1);
*name=('t','_',god1,mes1,den1,'_',chas1);
gets(name);
stf=fopen(name,"r");  
ipf=fopen("stat.txt","w");
if( (stf == 0 || ipf==0) )
{ 
      printf("error");
      return 1;
    }
fclose(ipf);                           
fclose(stf);                        
return 0;
getch();
}
в итоге

stat.txt

создаётся, но при этом выводится

error

- т.е. файл "t_<...>.dat" не открывается

Решение задачи: «Открытие файлов с именем, составленным из переменных»

textual
Листинг программы
*name=('t','_',god1,mes1,den1,'_',chas1);

Объяснение кода листинга программы

  1. Объявляется переменная name типа строка (char*) и инициализируется строкой, составленной из символов 't', '', god1, mes1, den1, '', chas1.
  2. Файл с именем, соответствующим значению переменной name, открывается в режиме чтения.
  3. В цикле, пока не достигнут конец файла, считывается содержимое файла и выводится на экран.
  4. Файл закрывается.

Оцени полезность:

13   голосов , оценка 3.692 из 5
Похожие ответы