C语言课设:中缀表达式转后缀表达式并求值(续)

博主修复了之前C语言课设代码中的错误,包括将除法误算为减法的问题、内存泄漏,并采用分文件实现降低编译依赖。使用VS2010作为IDE,提供了头文件和源文件的示例,并提醒用户注意资源释放和使用VS系列编译器。
摘要由CSDN通过智能技术生成

前天看到有人给我很久之前写的一篇博客《C语言::将中缀表达式转换为后缀表达式并计算结果》指出了一个BUG.

今天闲的没事,就把BUG修复一下,一看那代码写的,不忍直视,那个BUG更是让我啼笑皆非...

这就是传说中的成长吧!看过去的自己总觉得像个傻逼

-----------------------------------------------------------------------

本次程序升级说明:

1.修复了将除法计算为减法的BUG.

2.修复了一些内存泄漏的情况

3.对代码进行了分文件实现

4.将使用的库函数声明在了头文件里,降低编译依存性.(最近才学的,对这块还有些迷糊,不知道这样做对不对)

集成开发环境:vs 2010

-------------------------------------------------------------------------


代码如下:

Stack.h //栈的声明

#ifndef __STACK_H__
#define __STACK_H__
#define ElemType int
/栈的结构
typedef struct Stack{
	ElemType * base;
	ElemType * top;
	int stacksize;
}SqStack;
用到库函数的声明
//单独声明,为了降低编译依存性
#define NULL 0;
void exit(int);
void *malloc(unsigned);
void *realloc(void *,unsigned);
void free(void *);
/

//初始化一个栈
int CreateStack(SqStack * S);
//获得栈顶元素 
ElemType GetTop(SqStack * S);
//压栈 
int Push(SqStack * S,ElemType e);
//弹出 
int Pop(SqStack * S,ElemType * e);
//销毁栈
void DestoryStack(SqStack * S);
#endif


Stack.c  //栈的实现

#include"Stack.h"
/
  • 5
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值