C语言基础入栈,出栈操作

这篇博客介绍了C语言中栈的基本概念,重点讲解了入栈和出栈的操作步骤,内容详实,适合初学者掌握栈的使用。
摘要由CSDN通过智能技术生成

 C语言入栈,出栈基础操作,里面非常详细了,我就不啰嗦了

#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include<cstring>
#define ERROR -1
typedef int ElementType;
typedef enum {
    push, pop, end
} Operation;
/*typedef enum {
    false, true
} bool;*/
typedef int Position;
typedef struct SNode *PtrToSNode;
struct SNode {
    ElementType *Data;  /* 存储元素的数组 */
    Position Top;       /* 栈顶指针       */
    int MaxSize;        /* 堆栈最大容量   */
};
typedef PtrToSNode Stack;

//初始化栈
Stack CreateStack(int MaxSize)
{
    //准备存放结构体型的变量数据
    Stack S = (Stack)malloc(sizeof(struct SNode));
    //动态申请数组空间
    S->Data = (ElementType *)malloc(MaxSize * sizeof(ElementType));
    //把栈顶指针指向0
    S->Top = 0;
    //给MaxSize赋值
    S->MaxSize = MaxSize;
    return S;
}

//入栈
bool Push(Stack S, ElementType X)
{
    //判断栈顶是否与栈容量相等
    if (S->MaxSize == S->Top)
    {
        //输出Stack Ful
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值