尝试为某些分配实现以下代码,但在生成 malloc 数组时出现错误“[Error] 'stack' 的类型冲突”任何帮助?提前致谢。
#include<stdio.h>
#include<stdlib.h>
struct treenode
{
char info;
struct treenode *firstchild;
struct treenode *next;
int flag;
};
typedef struct treenode *NODEPTR;
NODEPTR *stack;
// Trying to create array here
stack=(NODEPTR*)malloc(sizeof(NODEPTR)*20);
int main()
{
printf("YO\n");
return 0;
}
编辑 :
我不能将它移到 main ,因为我必须在不同的函数中全局访问堆栈。因为堆栈数组在转到另一个函数时会被破坏。在这里查看http://ideone.com/5wpZsp,
当我在全球范围内给出静态声明时,它工作顺利,这里:http: //ideone.com/3vx9fz