Duda rápida pulsador

Tienes que crearte un registro para saber en qué estado está el led, y luego variar su estado en cada pulsación, algo así;

int estado =0
setup(){
...
}
void loop(){
 buttonState = digitalRead(buttonPin);
  if (buttonState == HIGH) {
    if(estado)
        digitalWrite(ledPin, HIGH);
   else
        digitalWrite(ledPin, LOW);
   estado ~= estado;
  } 
}