我正在刷新C中指针的初始化和声明。
我写了一段代码:
struct node
{
int data;
struct node* right=NULL;
struct node* left=NULL;
};
struct node* newNode(int data)
{
struct node* temp = (struct node*)malloc(sizeof(struct node));
temp->data = data;
return temp;
}
返回错误。错误是:
预期';'在声明清单的末尾
struct node* right=NULL;
然后我将代码更改为:
struct node
{
int data;
struct node* right;
struct node* left;
right = NULL;
left = NULL;
};
struct node* newNode(int data)
{
struct node* temp = (struct node*)malloc(sizeof(struct node));
temp->data = data;
return temp;
}
返回了同样的错误。
最后,
我将代码更改为:
struct node
{
int data;
struct node* right;
struct node* left;
};
struct node* newNode(int data)
{
struct node* temp = (struct node*)malloc(sizeof(struct node));
temp->data = data;
temp->right=NULL;
temp->left=NULL;
return temp;
}
上面的代码编译没有任何错误。为什么会这样?
答案 0 :(得分:4)
您无法在{Binding}
声明中初始化{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}}
成员。你必须在你的代码外面做。 BindingExpression path error: 'TimeColumnHeaderText' property not found on 'object' ''BindingProxy'
声明声明了一个类型,而不是可以初始化的变量。