분명히 새로 넣는 노드 링크를 NULL로 설정했는데 자꾸 0xCCCCCC로 나오길래 도대체 뭐가 문제인가 했더니
BEFORE
Node* phead;
Node* prevNode = NULL;
AFTER
Node* phead = NULL;
Node* prevNode = NULL;
헤드포인터 초기화를 안 한 거였네....
왜 교수님이 거품물고 초기화를 강조한 건지 이제 이해가 간다.
분명히 새로 넣는 노드 링크를 NULL로 설정했는데 자꾸 0xCCCCCC로 나오길래 도대체 뭐가 문제인가 했더니
BEFORE
Node* phead;
Node* prevNode = NULL;
AFTER
Node* phead = NULL;
Node* prevNode = NULL;
헤드포인터 초기화를 안 한 거였네....
왜 교수님이 거품물고 초기화를 강조한 건지 이제 이해가 간다.
Visual C++에서는 Debug 모드로 컴파일하면 스택 상의 지역 자동 변수는 0xCC 바이트로 채워짐. 그래서 값이 0xCC, 0xCCCC, 0xCCCCCCCC 이런 식이면 바로 변수 초기화 부분을 의심하면 됨. Magic number라고 검색해 봐.
헉 그런 조흔거였군요 감사감사