-------------------------------------------
#include <stdio.h>
/* copy2.c - copy input to output, version 2 */
main()
{
    int c;
    while ((c = getchar()) != EOF)
        putchar(c);
} 
------------------------------------------
1. Assignment operator, "=", returns value assigned.
2. "!=" has higher precedence than "=", so parentheses required.
3. (c = getchar()) != EOF) same as (c = (getchar() != EOF))
    and c would be assigned 1 (for true) or 0 (for false).
-------------------------------------------