请指出程序中的错误!
要求是输入一个十进制整数,输出它的八进制形式。我的程序有错误,请指出。谢谢!
#include<stdio.h>
typedef struct {
int *base;
int *top;
int stacksize;
}Sqstack;
InitStack(Sqstack&S)
{ S.base=(int*)malloc(100);
S.top=S.base;
S.stacksize=100;
}
Push(Sqstack&S,int e)
{*S.top++=e;}
Pop(Sqstack&S,int e)
{e=*--S.top;}
int main()
{int N;
InitStak(S);
scanf("%d",&N);
while(N)
{Push(S,N%8);
N=N/8;
}
while(S.top!=S.base)
{Pop(&s,e);
printf("%d",e);
}
}