22번째 줄에서 i < maxvalue+1 이라고 했기 때문에 i = 10001 이 될 수 있습니다.
이렇게 될 경우 count[10001] 의 값은 정의할 수 없습니다. (Undefined Behavior)
count 를 바깥에 선언했을 때 맞았습니다를 받은 것은 순전히 운이 좋았을 뿐이며
프로그램이 조금만 달라지거나, 컴파일러가 달라지거나 하면 전혀 다른 결과가 나올 수 있습니다.
"틀렸습니다" 가 될 수도 있고, "런타임 에러"가 될 수도 있고, ... 예측이 전혀 불가능합니다.
ndamin 1년 전
int count[maxvalue]={}; 함수를 main 함수 내에 선언하면 틀렸다고 나옵니다.
왜그럴까요???