C1 [C, rbtree] 구조체 속 구조체 포인터 문제 상황 위는 제공받은 헤더 파일이다. node와 rbtree 구조체가 선언되어 있는 모습이다. 이 코드의 9,10번 라인이 내가 작성한 코드이다. 이 코드를 make test로 실행시켜 보면 segment fault가 발생했다. 원인 segment fault는 참조할 수 없는 값을 참조하는 경우에 발생한다고 한다. 나는 5번 라인에서 rbtree크기만큼의 calloc를 수행하면 노드 2개(root, nil)가 들어갈만큼의 메모리를 할당받는 줄 알았고, 그 두 노드가 생성되는 줄 알았다. 해결 6번 라인을 통해 p에서 접근할(가질) 수 있는 것은 root와 nil 인데, 이는 각각 다른 노드의 주소를 저장할 수 있는 포인터라, parent나 color같은 속성이 없었다. 따라서 노드 크기의 메모리를 할.. 2022. 5. 2. 이전 1 다음