15558번 - 점프 게임
아래코드 보시면 71-75라인을 memset(MAP, 1, sizeof(MAP)); 으로 바꾸면 MAP에 1이 안들어가고 이상한 숫자가 들어갑니다
저는 당연히 1로 초기화될 줄 알고 다른부분의 틀린점을 찾으려 고생을 했는데 결국 맵의 초기화가 제대로 이루어지지 않았던겁니다.
대체 이유가 뭔가요? \
memset은 byte 단위로 초기화를 진행하고
int는 4byte기 때문에
16진수로 01010101이 들어간겁니다
https://ideone.com/uZYRTN
memset의 제대로된 사용법조차 모른상태로 쓰고 있었네요..
감사합니다
댓글을 작성하려면 로그인해야 합니다.
smucs13 3년 전 1
아래코드 보시면 71-75라인을 memset(MAP, 1, sizeof(MAP)); 으로 바꾸면 MAP에 1이 안들어가고 이상한 숫자가 들어갑니다
저는 당연히 1로 초기화될 줄 알고 다른부분의 틀린점을 찾으려 고생을 했는데 결국 맵의 초기화가 제대로 이루어지지 않았던겁니다.
대체 이유가 뭔가요? \