This is the syntax for the declaration of a pointer to an integer, I guess the most common is int * a;
What is sometimes confusing is that dereferencing a pointer uses practically the same syntax int i = *a;
Here i will contain the integer value that is stored in the adress pointed to by pointer a.
It doesn't really matter where you put the space in the syntax, the compiler doesn't care. The examples you posted are all acceptable and correct. It's only a matter of programming style -- however you wish to do it.