永发信息网

c++调试问题

答案:2  悬赏:10  手机版
解决时间 2021-06-02 14:10

下面是abc.cpp文件

bool Stack::push(int n)
{
 node *p=new node;
 if(p==NULL)
 {
  cout<<"the stack is overflow !\n";
  return false;
 }
 else
 {
  p->data=n;
  p->next=top;
  top=p;
  return true;
 }
}

bool Stack::pop(int& n)
{
 if(top==NULL)
 {
  cout<<"the stack is empty !\n";
  return false;
 }
 else
 {
  node *p=top;
  n=top->data;
  top=top->next;
  delete p;
  return true;
 }
}

下面是abc.h文件

class Stack
{
private:
 struct node
 {
  int data;
  node *next;
 }*top;
public:
 Stack()
 {
  top=NULL;
 }
 bool push(int n);
 bool pop(int& n);
};

下面是main.cpp文件

#include"stdio.h"
#include"iostream.h"
#define MAXSIZE 100
#include"abc.h"
#include"abc.cpp"

int main()
{
 Stack s;
 int i=0;
 s.push(5);
 s.push(7);
 s.pop(i);
 cout<<i<<endl;
 s.pop(i);
 cout<<i<<endl;
 return 0;

 

出现好多错误,帮忙看一下

最佳答案

main.cpp


#include"stdio.h"
#include"iostream"
#include "abc2.h"
using namespace std;
#define MAXSIZE 100
int main()
{
 Stack s;
 int i=0;
 s.push(5);
 s.push(7);
 s.pop(i);
 cout<<i<<endl;
 s.pop(i);
 cout<<i<<endl;
 return 0;


abc.h


#include <iostream>
using namespace std;
class Stack
{
private:
 struct node
 {
  int data;
  node *next;
 }*top;
public:
 Stack()
 {
  top=NULL;
 }
 bool push(int n);
 bool pop(int& n);
};


abc2.h //之前cpp不行必须是头文件


#include "abc.h"
bool Stack::pop(int& n)
{
 if(top==NULL)
 {
  cout<<"the stack is empty !\n";
  return false;
 }
 else
 {
  node *p=top;
  n=top->data;
  top=top->next;
  delete p;
  return true;
 }
}
bool Stack::push(int n)
{
 node *p=new node;
 if(p==NULL)
 {
  cout<<"the stack is overflow !\n";
  return false;
 }
 else
 {
  p->data=n;
  p->next=top;
  top=p;
  return true;
 }
}


全部回答

main.cpp

#include<iostream.h> #define MAXSIZE 100 #include"abc.h"

void main() {  Stack s;  int i=0;  s.push(5);  s.push(7);  s.pop(i);  cout<<i<<endl;  s.pop(i);  cout<<i<<endl;

}  ////////////////abc.cpp

#include<iostream.h> #include"abc.h"

bool Stack::push(int n) {  node *p=new node;  if(p==NULL)  {   cout<<"the stack is overflow !\n";   return false;  }  else  {    p->data=n;    p->next=top;   top=p;   return true;  } }

bool Stack::pop(int& n) {  if(top==NULL)  {   cout<<"the stack is empty !\n";   return false;  }   else   {    node *p=top;    n=top->data;    top=top->next;    delete p;    return true;  } } 

///////////////////abc.h

#ifndef ABC_H #define ABC_H class Stack { private:  struct node  {   int data;   node *next;  }*top; public:   Stack()   {     top=NULL;   }   bool push(int n);   bool pop(int& n); }; #endif

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
分式计算题,对我来说很难
求一篇大约300个单词的阅读带翻译的
QQ飞车的接力等级如何划分?
DNF37-毕业刷图有人带!什么图满经验!细雪哪
剑魂到底学不学自动隔挡啊?挣议够大的 想听
有什么可以边挂机边玩的游戏吗?
为什么别人休养生息比我经验高
N95和N91哪个更好一点?
想买一台好一点的电脑,有谁给点意见
there be句型
我的档案还在初中,现在上班好多年了,现在如
素喃比执行长,攻击范围大?
人和动物有啥不同?
DNF 牛逼的来看下
爱是什么的.我该如何去爱
推荐资讯
这样的配置能玩WOW吗 效果如何
07年和08年的同等配置的CRV有什么区别
莫高窟一课将莫高窟的东西描绘很好。模仿写南
柯南217开场?
梦见男友于同事同房是怎样的预兆
固体胶粘手时使用什么措施
和尚撑着一把伞(打一成语)
索爱s500c主题可以下载吗?
关于废旧衣物的处理
QQ烽火三国多少声望亮了
qq问问怎么点亮的
外地人在上海上小学一年要多少学费?需要什么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?