When you run your program, you have probably noticed that the shell returns (prints a new prompt) as soon as the parent thread quits, even if the child is still running. If you put the child into an infinite loop, it will run forever and you will not be able to kill it from the shell using Control-C.
PID TTY TIME COMD 2676 ttyq2 0:01 csh 2675 ttyq2 0:02 rlogind 19461 ttyq2 0:00 ps 18889 ttyq2 0:24 emacs 19460 ttyq2 0:00 sproc