The strcat() function appends the src string to the dest
string overwriting the `\0' character at the end of dest, and then adds
a terminating `\0' character. The strings may not overlap, and the dest
string must have enough space for the result.
The strncat() function is similar, except that it will use at most
n characters from src. Since the result is always terminated
with `\0', at most n+1 characters are written.