?? stack.h
字號:
#include <stdio.h >
#include <malloc.h >
typedef struct node{
char data;
struct node *next;
}NODE;
typedef struct snode{
int sum;
NODE *top;
NODE *bottom;
}SNODE;
void *InitStack(SNODE *S)
{
NODE *p=(NODE *)malloc(sizeof(NODE));
p->data='#';
S->top=p;
S->top->next=NULL;
S->bottom=S->top;
S->sum=0;
printf( "The Stack's Init is complete! \n ");
return 0;
}
void *StackPush(SNODE *S,char symbol)
{
NODE *p;
p=(NODE *)malloc(sizeof(NODE));
//printf( "Please input a number: ");
p->data=symbol;
p->next=S->top->next;
S->top->next=p;
S->top=p;
S->sum++;
//printf( "%2c",symbol);
return 0;
}
int StackPop(SNODE *S,NODE *t)
{
NODE *p;
int i=0;
if(S->sum==-1) return 1;
p=S->bottom;
//printf("S->sum=%d",S->sum);
while(S->sum!=0&&i!=(S->sum-1))
{ i++;
p=p->next;
}
t->data=S->top->data;
free(S->top);
S->top=p;
p->next=NULL;
S->sum--;
//printf( "The %d is pop from the stack! \n ", p- >data);
return 0;
}
void *PrintStack(SNODE *S)
{
NODE *p;
int i;
i=S->sum;
p=S->bottom;
while(i!=-1)
{
printf( "%c",p->data);
// system("PAUSE");
p=p->next;
i--;
}
return 0;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -