Pensando a dove inseriamo i nostri asterischi ; come fanno coloro che preferiscono mantenere il "pointerness" lontano dal tipo e con l'identificatore ( int * i ) scrivono il codice quando manca l'identificativo?
void f(int*); // 1
void f(int *); // 2
Il primo sembra molto più comune, non importa quale sia la vostra preferenza quando con l'identificatore. Questo è un caso speciale? Cosa lo rende un'eccezione?
Tuttavia, il primo non è ancora universale, perché ho visto il secondo stile. Oltre alla coerenza sulla falsariga di "c'è sempre uno spazio con l'identificatore, quindi ne abbiamo uno senza", ci sono altri motivi per preferirlo?
Che dire di cast o di array e tipi di funzione? Come scriveresti di nuovo:
(void*)var /*or*/ (void *)var
int[3] /*or*/ int [3]
// more relevant in C++ than C: Example<int[3]>
void(int) /*or*/ void (int)
// more relevant in C++ than C: std::function<void(int)>
Gli ultimi due sarebbero usati raramente, se mai, in C, ma sono visti con i modelli C ++.