| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 490 人关注过本帖
标题:关于栈中的 realloc()的问题
只看楼主 加入收藏
liu4396
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-8-1
收藏
 问题点数:0 回复次数:1 
关于栈中的 realloc()的问题

#include <string.h >
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
#include <math.h>
#define len 5
#define t 5
typedef struct stack { // 栈的结构
int *base ;
int *top ;
int stacksize ;
}stack;
struct stack liststack(stack newstack ) // 栈的初始化函数

{

newstack.base=(int *)malloc(sizeof(int ));
if (!newstack.base) exit (1);
newstack.top=newstack.base;
//scanf ("%d",newstack.stacksize);
newstack.stacksize=len;
return(newstack);
}

void display (stack newstack) // 输出函数
{ int *p;
p=newstack.base;
if (newstack.top-newstack.base==0)
{ printf ("zhu shi kong de \n");}
else
{ printf ("shu chu zhan :\n");
for(int i=0;i<newstack.top-newstack.base ;i++)
{
printf ("%d-->",*p);
p++;
}
}
printf ("\n");
}

stack push(stack newstack , int e) //进栈函数
{
static int count=0;
if (newstack.top-newstack.base>=newstack.stacksize )
{ printf (" \nzhuan shi man de:\n");
newstack.base=(int *)realloc (newstack.base ,( newstack.stacksize + t ) * sizeof (int )); //此句有错,那位大哥能指 正
if (!newstack.base) exit (1);
newstack.top=newstack.base + newstack.stacksize;
newstack.stacksize=newstack.stacksize+ t;

}
else{ *(newstack.top)=e;

count++;
printf ("\nshu chu ge shu ");
printf ("%d",count);
printf ("shu chu zhi ");
printf ("%d",*newstack.top);

( newstack.top) ++;}

return newstack;
}

stack pop (stack newstack ,int e);
stack pop (stack newstack ,int e) // 出栈函数
{
if (newstack.base==newstack.top)
{
printf("zhu shi kong de :");
exit (1);
}
newstack.top--;
e=*newstack.top;
printf ("zhan ding de zhi shi : %d\n",e);
return newstack;
}

void main()
{int e;
stack q ,newstack;
newstack=liststack(newstack);
q=push(newstack,1);
q=push(q,2);
q=push(q,3);
q=push(q,4);
q=push(q,5);
q=push(q,6);
q=push(q,7);
display(q);
q=pop( q,e );
q=pop( q,e );
q=pop( q,e );
q=pop( q,e );
display(q);
}

搜索更多相关主题的帖子: realloc 
2006-09-28 13:01
liu4396
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-8-1
收藏
得分:0 
我知道错在那了, 谢谢各位关注
2006-09-28 14:43
快速回复:关于栈中的 realloc()的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016269 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved