Understanding C's syntax for variable definition