#include #include #include #include #include int main(int argc, char *argv[]) { int f1 = open(argv[1], O_RDONLY); if (f1 == -1) return 1; int f2 = open(argv[2], O_RDONLY); if (f2 == -1) return 2; char buf; int fromStart = 0, backtrackTo = 0; while(read(f2, &buf, 1)) { if (buf == '\n') { backtrackTo = 0; continue; } backtrackTo--; fromStart++; int anyMatched = 0; char pbuf, mbuf = buf; while(read(f1, &pbuf, 1)) { if (pbuf != mbuf) { while (pbuf != '\n') read(f1, &pbuf, 1); lseek(f2, } else if (pbuf == '\n') { anyMatched = 1; } } } }