学习型 ASP/PHP/ASP.NET 主机 30元/年全能 ASP/PHP/ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付
轻松建立自己的群组,招兵买马   
发新话题
打印

求助:执行出错,怎么改

求助:执行出错,怎么改

#include<iostream.h>
#define stacksize 10
typedef struct stack{
    int data[stacksize];
    int top;
}stack;
void push(stack &l,int x){
    if(l.top==stacksize-1) throw "溢出";
    l.top++;
    l.data[l.top]=x;
}
void print(stack &l){
    for(int i=0;i<=l.top;i++)
        cout<<l.data[i]<<'\t';
}

void main(void){
    stack l;
    push(l,10);
    push(l,20);
    push(l,30);
    print(l);
}

不能执行,l.data[l.top]=x;出错,不知道怎么改
请大哥们指教

TOP

看了一下,top 没有初始化。。
Say goodbye to Windows.

TOP

不知道怎么改

呼呼

TOP

谢谢大哥,解决了

#include<iostream.h>
#define stacksize 10
typedef struct stack{
    int data[stacksize];
    int top;
}stack;
void push(stack &l,int x){
    if(l.top==stacksize-1) throw "溢出";
    l.top++;
    l.data[l.top]=x;
}
void print(stack &l){
    for(int i=0;i<=l.top;i++)
        cout<<l.data[i]<<'\t';
}

void main(void){
    stack l;
    l.top=-1;
    push(l,10);
    push(l,20);
    push(l,30);
    print(l);
}

TOP

发新话题