justking   6년 전

안녕하세요 또 모르는게 있습니다 하하핳

오늘은 어떤게 이해가안되는가 하면

12번줄과18번 줄입니다. 저걸그냥 전역변수로 a[100001][3],d[100001][3] 이렇게 하면 된다는건 알고있습니다. 그런데 쓸데없이 메모리낭비를 주려보고자 쓸데없는짓을했다니 예제입력넣어보면 답이

140727477045876 140727477045754 이래나오네요;;;;;;;;;;;;;;;;;;;

왜 이럴까요/......하ㅠㅠ 도와주새ㅔ요





ksmin1114   6년 전

지역변수로 선언한다면 기본적으로 쓰레기 값이 들어가 있습니다.

https://www.google.co.kr/searc...


따라서 초기화하는 과정을 거치거나, 건드리지 않은 부분에 대한 처리가 추가적으로 필요합니다.

kyhdudgns113   6년 전

문제를 푸실때, 배열같은 것들을 굳이 지역변수로 복잡하게 선언하지 마시고

int matrix[100001][2];

같이 아싸리 크게 전역변수로 선언하시면 여러모로 참 편합니다. ㅎㅎ

아 물론, 실제 프로젝트에서 저러면 큰일납니다.

kyhdudgns113   6년 전

전역변수로 선언하면, 스택메모리가 터지지도 않고, 무엇보다 C나 C++ 같은 경우는 0으로 알아서 초기화를 해주기 때문에 차암 편합니다

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