C で二分探索木のコーディングを練習していて、エラーが発生しました。
#include <stdio.h>
#include <stdlib.h>
/*struct Node*/
typedef struct Node{
int data;
struct Node* left;
struct Node* right;
}Node;
/*Forward declaration*/
Node *createNode(int data);
int main(int argc, char** argv) {
Node *root;
root = createNode(3); //ERROR
}
Node* createNode(int data){
Node* newNode = (Node*)malloc(sizeof(Node));
if(newNode==NULL){
fprintf(stderr,"Failed to allocate node\n");
exit(1);
}
newNode->data = data;
newNode->left = NULL;
newNode->right= NULL;
return newNode; //ERROR OCCURS HERE
}
これを実行しようとすると、実行に失敗します。エラーは、newNode を返すときに発生します。ポイントが返ってこない理由がわかりません。
私はネットビーンズを使用していますが、これはそれが言うことです