node* nodes[16]의 값은 바로 사용하면 의미가 없는 값으로,
malloc을 사용해 메모리를 할당해주어야합니다. for(int i=1; i<=15; i++) nodes[i]=malloc(sizeof(node));
그리고 node[1]이 root가 되게 하실 생각이셨다면, nodes[i/2]->rightchild=nodes[i]는 i=1일 때 실행이 되면 안될 것 같습니다.
nodes[0]인 노드는 없기 때문에, 추가로 malloc을 통해 메모리를 할당해주신 것이 아니라면, 같은 오류가 날 것입니다.
whtmdgus56 3년 전
기존의 node nodes[16] 부분을 제가 임의로 treepointer nodes[16]; 로 변경해서 최대한 포인터에 맞게 코드를 짜봤는데 제대로 실행이 되지않네요...
안되는 부분을 수정해주시면 감사하겠습니다!!