我试图在C中实现一个二进制搜索树。我在MinGW编译器中使用代码块ide
当我尝试运行以下代码时,此运行时错误
流程返回流程返回0xC00000fd
但是当我在http://ideone.com/编译时
它工作正常,没有任何错误
解决了:感谢@ user1161318
#include <stdio.h>
#include <stdlib.h>
struct node
{
struct node *left;
struct node *right;
struct node *parent;
int value;
}*r;
void inorder(struct node *root)
{
int sam;
if(root)
{
inorder(root->left);
sam = root->value;
printf(" %d ->",sam);
inorder(root->right);
}
}
void insert(struct node *root,int x)
{
struct node *temp = (struct node*)malloc(sizeof(struct node));
temp->value = x;
struct node *y=root;
while(root)
{
y = root;
if(root->value > x)
{
root = root->left;
}
else
{
root = root->right;
}
}
temp->parent = y;
if(!y)
{
r=temp;
}
else if(x > y->value)
{
y->right = temp;
}
else
{
y->left = temp;
}
}
int main()
{
int i;
for(i=0; i<10; i++)
{
insert(r,i);
}
inorder(r);
return 0;
}
最佳答案
全局变量struct node *r
未在main()
中初始化。
关于c - MinGW编译器进程返回进程返回0xC00000fd,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13769146/