'dataIn이 nullptr이었습니다'라고 뜹니다.
조회수 575회
QUEUE* Node = createQueue();
int* dataIn;
int* dataOut;
void BreadthFirstprint(Tree* tree) {
if (tree) {
*dataIn = tree->data;
enqueue(Node, &dataIn);
BreadthFirstprint(tree->left);
BreadthFirstprint(tree->right);
}
while (!emptyQueue(Node))
{
dequeue(Node, (void**)&dataOut);
printf("[ %d ] ", *dataOut);
}}
이 부분에서 오류가 납니다. tree->data
부분을 큐에 넣고 출력하고 싶은데 dataIn
이 nullptr
이라고 하네요. 어떻게 해결할 수 있을까요?
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
두 번째줄의
int* dataIn;
을int* dataIn=new int;
로 수정해 보세요.-
(•́ ✖ •̀)
알 수 없는 사용자
- 그럼 nullptr은 해결되는데 원하는 값이 아니라 그냥 이상한 상수로 나오네요ㅜㅜ 알 수 없는 사용자 2020.12.20 16:33
- 원하는 값이라는 것이 정확히 무엇인지, 그리고 현재 하고자 하는 것이 무엇인지 main 함수를 포함한 전체 코드를 첨부하셔야 그에 맞추어 답변을 드릴 수가 있습니다. 알 수 없는 사용자 2020.12.20 19:49
-
댓글 입력