已经宣言的变量却显示为声明
已经声明的变量却显示为声明
TreeNode *decl()
{
typespecifier();
TreeNode * t = varlist();//运行时发生错误 错误为 t是未声明的标识符,可是这里不是声明了么
varlist()返回一个TreeNode 类型的指针
match(SEMI);
TreeNode * q = declarations();
if(t != NULL)
t->sibling = q;
return t;
}
------解决方案--------------------
运行时这三个字不要随便用,建议贴全部代码
------解决方案--------------------
#include "TreeNode.h"
------解决方案--------------------
你把TreeNode节点的代码copy到现在这个文件中试试
------解决方案--------------------
先看看这断代码报错吗
------解决方案--------------------
t的初始化,不是调用了 varlist()么?
你这个 varlist()的返回值是什么,贴一下看看
------解决方案--------------------
把你的 TreeNode 结构体,贴出来。
TreeNode *decl()
{
typespecifier();
TreeNode * t = varlist();//运行时发生错误 错误为 t是未声明的标识符,可是这里不是声明了么
varlist()返回一个TreeNode 类型的指针
match(SEMI);
TreeNode * q = declarations();
if(t != NULL)
t->sibling = q;
return t;
}
------解决方案--------------------
运行时这三个字不要随便用,建议贴全部代码
------解决方案--------------------
#include "TreeNode.h"
------解决方案--------------------
你把TreeNode节点的代码copy到现在这个文件中试试
------解决方案--------------------
先看看这断代码报错吗
struct TreeNode;
TreeNode *temp_temp_temp()
{
TreeNode * t;
return t;
}
------解决方案--------------------
t的初始化,不是调用了 varlist()么?
你这个 varlist()的返回值是什么,贴一下看看
------解决方案--------------------
把你的 TreeNode 结构体,贴出来。