Инстинктивно я обнаружил, где помещать пробелы в объявления указателя:
int system(const char *command); // <-- right
int* foo() { return 0; } // <-- wrong
int *X = 123; // <-- right
int* Y = 321; // <-- wrong
int *Z = (int*) X += (int*)Y // <-- right
#define pchar char* // <-- right
но это все еще озадачивает меня:
typedef int* intptr;
ИЛИ
typedef int *intptr;
Где звезда принадлежит, слева или справа?
Оба эквивалентны. Выбор - это вопрос или личное предпочтение.