int main()
{
char *name=(char*)malloc(50*sizeof(char));
printf("Podaj nazwe pliku: ");
scanf("%s",name);
*srednia(name);
return 0;
}
int *srednia(char *nazwa)
{
nazwa = (char*)malloc(50*sizeof(char));
int liczba,rozmiar,i;
FILE *plik1,*plik2;
plik1 = fopen(nazwa,"r");
plik2 = fopen("temp.txt","w");
while(fscanf(plik1,"%d",&liczba)!=EOF)
{
if (liczba>0)
{
fprintf(plik2,"%d\n",liczba);
rozmiar++;
}
}
fclose(plik1);
fclose(plik2);
Chodzi mi konkretnie o tą linijkę:
plik1 = fopen(nazwa,"r");
Jeśli w pierwszym parametrze podam nazwe pliku np. "plik.txt" to program działa dobrze. Ale jeśli podam zmienną nazwa, która jest wskażnikiem do tablicy typu char, program nie wykonuje operacji na tym pliku.