我有一个小小的警告问题。 我有一个全局结构,包括所有必要的东西(标志,分配的内存列表等)。 它是一个全球结构。所以我在所有程序中使用它。
现在我想在指令堆栈上添加一个指针,这样我就可以获得像global.iStack
这样的数据
全球的结构是
struct tGlobal{
.. some other thing in structure
struct instrStack *iStack;
struct mainTree *mTree;
};
extern struct tGlobal global;
我必须初始化堆栈。所以我有一个这个原型的功能
instrStack* instrStackInit (instrStack* stc );
所以主要是我在做这个
struct instrStack dummyInstrStack;
global.iStack = instrStackInit(&dummyInstrStack);
但Clion正在显示警告,例如不兼容的指针类型'struct tGlobal :: instrStack *'和'instrStack *'
但我在该堆栈上添加指针,所以应该有问题。或者我错了?
这件事发生了。再次在全局结构中,当我想要sxample init时,二进制树和它上面的指针插入到结构中,这样我就可以轻松地在任何地方访问数据。
任何人都可以帮助我并告诉我我做错了吗?
E:instrStack宣言
typedef struct {
Instr **dataInstr;
int count;
int alloc;
}instrStack;