002
06.11.2003, 23:30 Uhr
Pablo
Supertux (Operator)
|
Ich habe folgendes getestet und hat funktioniert. Allerding prüft auf gleiche Zeichen, gleiche Länge, usw. Wenn datei1 so ausehen würde "Ich bin A" und datei2 "Ich bin A ", mit dem Leerzeichen, würde das Programm sagen, sie sind nicht gleich.
C++: |
#include <stdio.h>
int f(int ch) { printf("\tch ist zur Zeit = %d\n", ch); return ch; }
int comp(const char* file1, const char* file2) { int ch=1; FILE* f1, *f2; f1 = fopen(file1, "r"); f2 = fopen(file2, "r"); while(!feof(f1) && !feof(f2) && (ch=ch&fgetc(f1)==fgetc(f2))); fclose(f1); fclose(f2); return ch; }
int main(int argc, char** argv) { if (argc!=3) { fprintf(stderr, "usage: %s file1 file2\n", argv[0]); return 1; } printf("Die Dateien %s und %s sind%sgleich\n", argv[1],argv[2], comp(argv[1],argv[2]) ? " " : " nicht "); return 0; }
|
-- A! Elbereth Gilthoniel! silivren penna míriel o menel aglar elenath, Gilthoniel, A! Elbereth! |