我用 g ++ 运行:
#include <iostream>
using namespace std;
struct s
{
int data;
s *top;
};
class stack
{
public:
int n;
public:
s *base;
stack();
~stack();
int empty();
void push(int i);
void pop();
};
stack::stack()
{
base=new s;
base->top=NULL;
}
stack::~stack()
{
}
void stack::push(int i)
{
n=i;
s *p;
p=new s;
p->top=base;
p->data=n;
base=p;
}
void stack::pop()
{
s *p;
p=base;
base=p->top;
n=p->data;
delete p;
}
int stack::empty()
{
if (base->top!=NULL)
return 1;
else return 0;
}
#include "flie1.h"
int main()
{ int n;
stack a;
cin>>n;
while (n)
{
a.push(n%8);
n=n/8;
}
while (a.empty())
{
a.pop();
cout<<a.n<<" ";
}
return 0;
}
joe@joe-laptop:~/workspace/data/栈/链栈$ g++ main.cc -o main
joe@joe-laptop:~/workspace/data/栈/链栈$ ./main
1348 //输入
按道理应得到:2504
但是我运行后是这样的:
joe@joe-laptop:~/workspace/data/栈/链栈$ g++ main.cc -o main
joe@joe-laptop:~/workspace/data/栈/链栈$ ./main
1348
joe@joe-laptop:~/workspace/data/栈/链栈$ /链栈$
它根本就不输出,请问是怎么一回事阿??
g++ 问题~
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
- TeliuTe
- 论坛版主
- 帖子: 7675
- 注册时间: 2007-11-25 13:29
- 系统: 16/18/20/w7
- 来自: 新疆博乐
- 联系:
Re: g++ 问题~
只是复制到 geany 里简单运行了一下,显示出了 2 5 0 4
注释去掉 了 //#include "flie1.h" ,不知是否是这儿的问题,
ps: 代码格式排成缩进的比较好阅读
注释去掉 了 //#include "flie1.h" ,不知是否是这儿的问题,
ps: 代码格式排成缩进的比较好阅读
- 附件
-
- 1348.gif (6.33 KiB) 查看 142 次
-
- 帖子: 33
- 注册时间: 2008-11-11 19:20
Re: g++ 问题~
TeliuTe, 我把所有的文件夹的名称改为 englsh (以前是中文)就ok了,真是奇怪亚