写数据结构(stack)时编译报错解决思路
写数据结构(stack)时编译报错例如:stack.hC/C++ code#define def_stacksize 30#define StackElemType intt
写数据结构(stack)时编译报错
例如:stack.h
C/C++ code#define def_stacksize 30#define StackElemType inttypedef struct { StackElemType *top; StackElemType *base; int stacksize;}Stack;int InitStack(Stack &s);
stack.c:
C/C++ codeint InitStack(Stack &s){ s.base=(StackElemType*)malloc(s.stacksize*sizeof(StackElemType)); s.top=s.base; s.stacksize=def_stacksize; return 1;}
报错:
stack.h & stack.c 每一个函数都是:
error: expected ';', ',' or ')' before '&' token
------------------------------------------------------
代码够不?不够就全贴出来!
谢谢各位帮助!
[解决办法]#include<stdlib.h>
#define def_stacksize 30
#define StackElemType int
typedef struct {
StackElemType *top;
StackElemType *base;
int stacksize;
}Stack;
int InitStack(Stack &s);
int InitStack(Stack &s)
{
s.base=(StackElemType*)malloc(s.stacksize*sizeof(StackElemType));
s.top=s.base;
s.stacksize=def_stacksize;
return 1;
}
表示编译无错。是不是;写出了中文下的;了。。。
[解决办法]你包了头文件没有。 .c #include "stack.h" .h 可能也要包别的 如 #include <stdio.h> #include <stdlib.h>
[解决办法]嗯嗯,那是c++的东西。