#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#define TRUE 1
#define FALSE 0
#define StackElementType int //栈中元素数据类型为字符
typedef struct node
{
StackElementType data;
struct node *next;
}LinkStackNode; //链栈的结构类型
typedef LinkStackNode *LinkStack; //定义链栈头指针
void InitStack(LinkStackNode *s)
{
s=(LinkStackNode *)malloc(sizeof(LinkStackNode));
s->next==NULL;
} //初始化链栈
/进栈操作。/
int Push(LinkStack top, StackElementType x)/* 将数据元素x压入栈top中 */
{
LinkStackNode *temp;
temp=(LinkStackNode )malloc(sizeof(LinkStackNode));
if(temp==NULL)
return(FALSE); / 申请空间失败 /
temp->data=x;
temp->next=top->next;
top->next=temp; / 修改当前栈顶指针 */
return(TRUE);
}
/出栈操作。/
int Pop(LinkStack top, StackElementType x)
{
/ 将栈top的栈顶元素弹出,放到x所指的存储空间中 */
LinkStackNode * temp;
temp=top->next;
if(temp==NULL) /栈为空/
return(FALSE);
top->next=temp->next;
x=temp->data;
free(temp); / 释放存储空间 */
return(TRUE);
}
/链栈读栈顶元素/
int GetTop(LinkStack top, StackElementType *x)
{
LinkStackNode * temp;
temp=top->next;
if(temp==NULL) /栈为空/
return(FALSE);
*x=temp->data;
return(TRUE);
}
这个代码为啥一直显示 源文件未编译(Dec-C++)