鱼C论坛

 找回密码
 立即注册
查看: 2229|回复: 1

链式栈问题

[复制链接]
发表于 2018-12-17 15:56:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
#include<malloc.h>
typedef char datetype;
typedef struct node
{
        datetype date;
        struct node *p;

} LSstack;

void LSstack_initialize(LSstack** headpoint);
int LSstack_notempty(LSstack* headpoint);
void LSstack_push(LSstack **headpoint, datetype);
int LSstack_pop(LSstack** headpoint, datetype*);
int LSstack_top(LSstack* headpoint, datetype*);



void LSstack_initialize(LSstack** S)
{        
        (*S) = (LSstack*)malloc(sizeof(LSstack));
        (*S)->p = NULL;
}

int LSstack_notempty(LSstack* S)
{
        if ((S->p) != NULL)
                return 0;
        else return 1;
}

void LSstack_push(LSstack **S, datetype a)
{        
        if ((*S)->p = NULL)
        {
                (*S)->date = a;
        }
        else 
        {
                LSstack* m_p;
                m_p = (*S);
                (*S) = (LSstack*)malloc(sizeof(LSstack));
                (*S)->p = m_p;
                (*S)->date = a;
        }


}

int LSstack_pop(LSstack** S, datetype *d)
{        
        if ((*S) == NULL)
                return 0;
        else
        {
                LSstack* m_p;
                m_p = (*S)->p;
                *d = (*S)->date;
                free(*S);
                (*S) = m_p;
                return 1;
        }
        

}

int LSstack_top(LSstack* S, datetype *d)
{
        if(S == NULL)
                {
                        printf("error");
                        return 0;
                }
        *d = S->date;
        return 1;
}

求大佬帮我看看这栈问题出在哪 测试了一下好像不能存超过两个数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-12-28 15:26:02 | 显示全部楼层
void LSstack_push(LSstack **S, datetype a)
{        
        if ((*S)->p = NULL)
        {
                (*S)->date = a;
        }

  if ((*S)->p = NULL)判断里面应该是双等号==

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-26 08:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表