So I’m trying to do my programming assignment, here it is:
Write a C/C++ program (call it string invert) that takes a
string argument from the command line and outputs the string in reversed order. Here comes
the twist: Each process can output at most one character. If you want to output more than a
single character, you must fork off one or more processes in order to do that, and each of the
forked processes in turn outputs a single character. After the call to program string invert
with the command line argument, the output should appear, and no more processes should
be running, in addition to the shell. Test your program on any UNIX/LINUX machine, and
turn in the source code as part of the written assignment. (The source code should be at
most a few lines long.)
I can do the read and invert string easy, no problem. The problem is what does it mean when it says “each process can output at most one character”. i don’t even understand what that means. I don’t need any code, i’m confident i can do it myself once i understand. I just need someone to explain what that’s supposed to mean.
Let’s say you have the input “abcd”, then your program should spawn a process for each character. So the first process would return ‘d’, the second process ‘c’ and so on. The assignment is probably a test of how well you understand synchronizing processes.