float x;

float easing = 0.01;

void setup(){

  size(220,120);

  smooth();

}

void draw(){

  float targetX = mouseX;

  x += (targetX-x) *easing;

  ellipse(x,40,12,12);

  println(targetX + " : " +x);

}



이렇게 하면 마우스의 x 좌표값을 따라서 원이 x좌표로 움직이는데 
이해 안가는게 전역 변수로 x를 선언만 하고 값은 안줬잖아 근데 draw 함수 내부에 x += (targetX-x) *easing 라는 식이 어떻게 성립됨?

풀어 쓰면 x = x+ (targetX-x) *easing 이 될테고 targetX는 마우스x 좌표값이고  easing은 0.01의 값이 있는데 x의 초기값은 설정이 안되있는데 왜

이게 오류가 안나고 작동하는지 이해가 안감 .. 알랴져