Witam
Mam taki problem: strcmp i strlen sprawdza mi po nazwie a nie zawartości pliku. Jak przekształcić ten kod, żeby strcmp i strlen odnosił się do zawartości pliku a nie nazwy? Będę wdzięczny za pomoc.
#include <stdio.h>
#include <iostream.h>
main()
{
char c,s[20],t[20];
FILE *fp, *fp2;
int spr;
cout<<"Podaj nazwe pierwszego pliku: ";
gets(s);
fp=fopen(s, "w");
for (int i=1;i<=5;i++)
{
cout<<"Podaj znak: ";
cin>>c;
putc(c,fp);
}
fclose(fp);
getchar();
getchar();
fp=fopen(s, "r");
do
{
c=getc(fp);
if (c!=EOF)
{
Sleep(250);
cout<<c;
}
}
while (c!=EOF);
fclose(fp);
cout<<endl;
cout<<"Podaj nazwe drugiego pliku: ";
gets(t);
fp2=fopen(t, "w");
for (int i=1;i<=5;i++)
{
cout<<"Podaj znak: ";
cin>>c;
putc(c,fp2);
}
fclose(fp2);
getchar();
getchar();
fp=fopen(t, "r");
do
{
c=getc(fp2);
if (c!=EOF)
{
Sleep(250);
cout<<c;
}
}
while (c!=EOF);
fclose(fp2);
cout<<endl;
fp=fopen(s, "r");
fp2=fopen(t, "r");
spr=strcmp(s,t);
if (spr==0)
cout<<"Pliki sa takie same"<<endl;
else
cout<<"Pliki sa rozne"<<endl;
if (strlen(s)==strlen(t))
cout<<"Pliki maja taka sama dlugosc"<<endl;
else
cout<<"Pliki maja rozna dlugosc";
fclose(fp);
fclose(fp2);
getchar();
}
Wiem, że zmienne t i s przechowują nazwy tych dwóch plików i dlatego strcmp i strlen sprawdza właśnie po nazwach, ale nie wiem jak to zmodyfikować, by sprawdzał wg. zawartości.