求高手关于【error C2143: 语法错误 : 缺少“)”(在“;”的前面)】错误的解决办法

作者在 2010-04-23 13:51:11 发布以下内容
#include<iostream>
#include<stdlib.h>
using namespace std;
#define    TRUE            1
#define    FALSE            0
#define    OK                1
#define    ERROR            0
#define    INFEASIBLE                -1
#define    OVERFLOW                -2
//Status 是函数的类型,其值是函数结果状态代码
typedef    int        Status;
#define    STACK_INIT_SIZE    100;
#define    STACKINCREMENT    10;
typedef    struct{
    int    *base;
    int    *top;
    int    stacksize;
}SqStack;
Status    InitStack(SqStack &S){
    S.base = (int *)malloc(STACK_INIT_SIZE *sizeof ( int ) );
    if(!S.base)    exit(OVERFLOW);
    S.top=S.base;
    S.stacksize=STACK_INIT_SIZE;
    return    OK;
}//Initstack
Status    DestroyStack(SqStack &S){                //Destroy是释放存储空间
    free(S.base);
    S.base=NULL;
    S.top=NULL;
    S.stacksize=0;
    return    OK;
}//DestroyStack
Status    ClearStack(SqStack &S){                    //Clear是将栈置空
    S.top=S.base;
    return    OK;
}//ClearStack
Status    StackEmpty(SqStack S){
    if(S.base==S.top)    return    TRUE;
    return    FALSE;
}//StackEmpty
int    StackLength(SqStack S){
    return    S.top-S.base;
}//StackLength
Status    GetTop(SqStack S,int &e){
    if(S.top==S.base)    return    ERROR;
    e=*(S.top-1);
    return    OK;
}//GetTop
Status    Push(SqStack &S,int e){                     //插入e为栈顶元素
    if(S.top-S.base>=S.stacksize){
        S.base=(int *)realloc(S.base,(S.stacksize+STACKINCREMENT)*sizeof(int));
        if(!S.base)    exit(OVERFLOW);
        S.top=S.base+S.stacksize;
        S.stacksize+=STACKINCREMENT;
    }
    *S.top++=e;
    return    OK;
}//Push
int    main(){
    SqStack    S;
    int    a;
    InitStack(S);
    Push(S,8);
    GetTop(S,a);
    cout<<a<<endl;
    cout<<S.stacksize<<endl;
    cout<<StackLength(S)<<endl;
    getchar();
    return    0;
}

【【

\栈与队列\栈.cpp(20) : error C2143: 语法错误 : 缺少“)”(在“;”的前面)
\栈与队列\栈.cpp(20) : error C2100: 非法的间接寻址
\栈与队列\栈.cpp(20) : error C2059: 语法错误 : “)”
\栈与队列\栈.cpp(51) : error C2143: 语法错误 : 缺少“)”(在“;”的前面)
\栈与队列\栈.cpp(51) : error C2143: 语法错误 : 缺少“)”(在“;”的前面)
\栈与队列\栈.cpp(51) : error C2059: 语法错误 : “)”
\栈与队列\栈.cpp(51) : error C2100: 非法的间接寻址
\栈与队列\栈.cpp(51) : error C2059: 语法错误 : “)”

】】
今天写了一点关于栈的代码,用vs2008编译时出现了这些个错误,很闹心。我在百度上看了很多解决办法,仍然解决不了,就拉出来让大家看看,希望高手给解决一下,小弟不胜感激~~~

C/C++ | 阅读 3383 次
文章评论,共0条
游客请输入验证码
文章分类
文章归档
最新评论