当前位置: 技术问答>linux和unix
使用泛型数组堆栈总报错提示unexpected end of file found
来源: 互联网 发布时间:2017-04-29
本文导语: 主程序g_stack.c如下 #include "g_stack.h" #include #include GENERIC_STACK(int,_int,10) GENERIC_STACK(float,_float,5) int main() { push_int(5); push_int(22); push_int(15); push_float(25.3); push_float(-40.3); while(!is_empty_int()) { printf("popinf %dn",top_int()...
主程序g_stack.c如下
自己编写的头文件g_stack.h如下
求大神帮忙找下出错位置。
#include "g_stack.h"
#include
#include
GENERIC_STACK(int,_int,10)
GENERIC_STACK(float,_float,5)
int main()
{
push_int(5);
push_int(22);
push_int(15);
push_float(25.3);
push_float(-40.3);
while(!is_empty_int())
{
printf("popinf %dn",top_int());
pop_int();
}
while(is_empty_float())
{
printf("poping %fn",top_float());
pop_float();
}
return EXIT_SUCCESS;
}
自己编写的头文件g_stack.h如下
#include
#define GENERIC_STACK(STACK_TYPE,SUFFIX,STACK_SIZE)
static STACK_TYPE stack##SUFFIX[STACK_SIZE];
static int top_element##SUFFIX = -1;
int is_empty##SUFFIX(void)
{
return top_element##SUFFIX == -1;
}
int is_full##SUFFIC(value)
{
return top_element##SUFFIX == STACK_SIZE-1;
}
void push##SUFFIX(STACK_TYPE value)
{
assert(!is_full##SUFFIX());
top_element##SUFFIX += 1;
stack##SUFFIX[top_element##SUFFIX] = value
}
void pop##SUFFIX(void)
{
assert(!is_empty##SUFFIX());
top_element##SUFFIX -=1;
}
STACK_TYPE top##SUFFIX(void)
{
assert(!is_empty##SUFFIX());
return stack##SUFFIX[top_element##SUFFIX];
}
求大神帮忙找下出错位置。
|
最后一行的 "" 不需要的了!
注意 ""后面不要留空格!
注意 ""后面不要留空格!
|