I'm working on a replication of the Unix/Linux Cat utility, and I'm having some difficulty with its implementation. Right now, I'm using getopts to parse out the command line entry and then handling each argument one at a time. I'm reading it into a char array with fread, and I'm not sure if that's even the best way (looping with fgets, potentially?).
Right now I'm trying to append $ to the end of each line, but instead it's replacing the \n with $, and I can't seem to figure out how to place a \n at the end. Any guidance on this and general suggestions would be much obliged.
char case_A( char buf, int cap )
for (i=0; i<cap; ++i)
if((ptr = strchr(buf, '\n')))
*ptr = '$';
case_T( buf , cap);
int main(int argc, char * argv)
int cap = 0;
char *buf = malloc( cap * sizeof(char));
FILE * fptr;
fptr = fopen(argv, "r");
buf = realloc(buf, sizeof(char) * cap);
fread ( buf+cap-10, sizeof( char ), 10, fptr );
while (( choice = getopt (argc, argv, "AbeEnstTuv")) != -1)
<switch statement for choice>