c语言和数据结构中SqStack 、 SqStack &S 、if(!(S.base=(SElemType *)malloc(STACK_INIT_SIZ

敖elf鸿 2011-04-12 12:10:32
SElemType *top、(SqStack &S)、if(!(S.base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType))))
这三句分别是什么意思,谁能给咱详细讲解一下,拜谢!

struct SqStack
{
SElemType *base; // 在栈构造之前和销毁之后,base的值为NULL
SElemType *top; // 栈顶指针
int stacksize; // 当前已分配的存储空间,以元素为单位
}; // 顺序栈
中,SElemType是什么东西?是类型吗?
3、
void InitStack(SqStack &S)
{ // 构造一个空栈S
if(!(S.base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType))))
exit(OVERFLOW); // 存储分配失败
S.top=S.base;
S.stacksize=STACK_INIT_SIZE;
}
...全文
956 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
敖elf鸿 2011-04-12
  • 打赏
  • 举报
回复
谢谢啦!!!!十分感谢!!
  • 打赏
  • 举报
回复

typedef SElemType int; //也可以是char,反正是一个类型

SElemType *top、(SqStack &S)、if(!(S.base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType))))
SElemType *top是结构体的 栈顶指针
(SqStack &S) 估计你想要的 一个函数,
if(!(S.base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType))))
如果S.base开辟的内存不成功, 如何开辟具体参看malloc使用方法


void InitStack(SqStack &S)
{ // 构造一个空栈S
if(!(S.base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType))))
exit(OVERFLOW); // 存储分配失败
S.top=S.base;
S.stacksize=STACK_INIT_SIZE;
}
自己去想,补齐代码!

70,023

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧