smucs13   3년 전

아래코드 보시면 71-75라인을 memset(MAP, 1, sizeof(MAP)); 으로 바꾸면 MAP에 1이 안들어가고 이상한 숫자가 들어갑니다

저는 당연히 1로 초기화될 줄 알고 다른부분의 틀린점을 찾으려 고생을 했는데 결국 맵의 초기화가 제대로 이루어지지 않았던겁니다.

대체 이유가 뭔가요? \

scvhero   3년 전

memset은 byte 단위로 초기화를 진행하고

int는 4byte기 때문에 

16진수로 01010101이 들어간겁니다

https://ideone.com/uZYRTN

smucs13   3년 전

scvhero 

memset의 제대로된 사용법조차 모른상태로 쓰고 있었네요..

감사합니다

댓글을 작성하려면 로그인해야 합니다.