Question: Study the Linux/Unix command cat to understand its basic functionality. Then study the attached source code mycat.c which implements the cat command using standard I/O

Study the Linux/Unix command cat to understand its basic functionality. Then study the attached source code mycat.c which implements the cat command using standard I/O functions. Rewrite the attached mycat.c program using System I/O functions (read, write, open, close). Write this in System I/O function

#include

int main(int argc, char* argv[])

{

FILE *fp;

void filecopy(FILE *, FILE *);

if (argc == 1)

{

filecopy(stdin, stdout);

}

else

{

while(--argc >0)

{

if ((fp = fopen(*++argv, "r")) == NULL)

{

printf("cat: can not open %s ", *argv);

return 1;

}

else

{

filecopy(fp, stdout);

fclose(fp);

}

}

}

return 0;

}

void filecopy(FILE *ifp, FILE *ofp)

{

int c;

while ((c = getc(ifp)) != EOF)

{

putc(c, ofp);

}

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!