<aside> 💡

현재 소스코드 구현방식의 문제점

int main() {
	// 시간제어테스트

	int time = 0;

	// 게임루프
	while (true) {
		time++;		

		if (time % 100000000 == 0) {
			cout << "check" << "\\n";
			
			// int overflow 고려
			time = 0;
		}
	}
}

</aside>

<aside> 💡

추후 GPT를 통해 알아낸 해결방법 (추후 적용하면됨)

auto lastTime = chrono::high_resolution_clock::now();
while (true) {
    auto currentTime = chrono::high_resolution_clock::now();
    double deltaTime = chrono::duration<double>(currentTime - lastTime).count();
    lastTime = currentTime;

    // deltaTime을 이용해 이동/시간 기반 처리
}

</aside>

키입력처리를 해야함. 이거는 문법과 관련된 부분이므로 도움을 받아야함.

AI를 통해 얻은 kbhit() 사용법

아래와 같이 코드를 짜보았다.

char GetKeyInput()
{
	if (_kbhit()) {        // 키가 눌렸는지 확인
		return _getch();   // 눌린 키를 반환
	}
	return 0;              // 입력이 없으면 0 반환
}

int main() {
	// 시간제어테스트

	int time = 0;

	// 게임루프
	while (true) {
		time++;

		
		if (GetKeyInput() == 75) {
			cout<<"left key is pressed\\n";
		}

		if (GetKeyInput() == 77) {
			cout<<"right key is pressed\\n";
		}
		

		if (time % 100000000 == 0) {
			cout << "check" << "\\n";

			
			// int overflow 고려
			time = 0;
		}
	}
}

위와 같이 소스코드를 짯을 때 문제점