void copy (char *source, char *dest) { while (*dest++ = *source++); }
The char that is represented by *source is copied to the field <
*source
chars are integral types. Integral types are interpreted as conditionals in the following way:
char
0 -> false Anything else -> true
Since "strings" in C are null-terminated (meaning 0 or '\0') when it reaches the end of the string it stops.
0
'\0'