contatore

Non è vero che non ha senso. Nel C++ solo lo 0 è considerato false, tutti i numeri con valore pari ad 1 o superiore, sono considerati true.
Quindi considerare e comparare il valore di un pin, che nel digitalRead viene restituito come byte con valore 0 o 1, come 0 o 1 è corretto.