i1004gy   5년 전

산술식을 받을거라서 사칙연산 받을 char형과 숫자를 받을 int형을 선언하고

아래 코드처럼 만들었는데요 preorder inorder postorder 재귀부분이 전부 애라 생성되네요 이유가 뭐죠?

djm03178   5년 전

malloc은 그냥 생 메모리를 할당해주는 역할입니다. 자기가 할당해주는 게 구조체인지, 멤버 초기화를 해야 하는지 같은 건 모릅니다. 그래서 left나 right 등도 NULL로 초기화가 안 됩니다.

i1004gy   5년 전

아 그런군요 밑에 하나하나 NULL로 초기화하기엔 너무 써야할게 많아서 사용한방법인데 .... 그럼 다른 방법은 없나요?

djm03178   5년 전

C++이라면 malloc 대신 new를 사용하면 되고, C로만 해야 한다면 할당 및 초기화를 같이 담당하는 함수를 만들면 편합니다.

flflds0811   5년 전

C언어에 calloc 이라고 할당과 동시에 Null로 초기화 해주는 함수가 있습니다. 참고하시면 편하실 겁니다.

댓글을 작성하려면 로그인해야 합니다.