값이 이상하게 나옵니다

msy9427 Reply 9 years 2 weeks ago
맨처음 몇개의 16진수 수를 받을지 정한다음 16진수가 아닐경우 NULL을 출력하게 하는게 목표였는데. 무슨 수를 입력받든 간에 NULL을 출력합니다. 어디서 문제가 생긴걸까요.
pichulia Reply 9 years 2 weeks ago
int arr[n]; 이 부분이 문제일 것입니다. 위의 방식으로는 C++은 배열 할당을 할 때 const가 아닌 변수를 이용해서 배열을 만드는 것이 불가능합니다. 그러니까 n에 10이 들어가있다고 arr[10]; 이런식으로 10칸짜리 배열이 만들어지는게 안되는거죠... 입력을 모두 받아서 정답을 배열에 저장했다가 입력이 끝난 후 한꺼번에 출력하는 방식은 왠만해서는 지양했으면 좋겠습니다. 한줄이 입력되는 순간 그 줄에 대한 정답이 바로 구해지니까 그 자리에서 출력하는게 훨씬 개이득이죠