더북(TheBook)

마지막으로 추가할 부분이 있습니다. 예를 들어, 처음에 물을 준 시간이 10초입니다. 그리고 다음에 물을 준 시간이 15초입니다. 그러면 물을 준 간격인 5초가 prevElapsedTime 변수에 저장됩니다. 다음에 물을 준 시간은 25초라고 합시다. 그러면 25초에서 직전에 물을 준 시간인 15초를 빼야 합니다. 그런데 15초를 저장할 장소가 없습니다. 15초가 저장되어 있어야 25초에서 뺄 수 있는데 말이죠. 그런데 prevElapsedTime 변수에는 현재 5초가 저장되어 있지만, while 문을 한 번 돌고 나면 이 값은 더 이상 필요 없습니다. 그래서 prevElapsedTimetotalElapsedTime 값인 15초를 저장해서 다음 반복에 활용합니다.

그림 7-16 prevElapsedTime 변수에 totalElapsedTime 변수의 값을 저장하는 이유

7.4 프로젝트.c

while (1) {
    (중략)
    } else {
        printf("물고기가 아직 살아 있어요!\n");
    }
    prevElapsedTime = totalElapsedTime;
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.