代碼如下:
#include<stdio.h>
#include<stdlib.h>
typedef struct
{
char *base;// base是一個地址 , *base是一個char類型的字符
char *top;// top是一個地址標記棧頂在什么位置 , *top是一個char類型的字符
int stacksize;//棧的大小(不是當前大小)
}sqStack;
#define STACK_INIT_SIZE 100
void initStack(sqStack *stack)
{
stack->base = (char*)malloc( STACK_INIT_SIZE * sizeof(char));//為創建棧開辟一塊空間
if (!stack->base)
{//空間開辟失敗
exit(0);
}
stack->top = stack->base;//棧頂等於棧底,空棧狀態
stack->stacksize = STACK_INIT_SIZE;//棧的大小
}
int main()
{
sqStack stack;
initStack(&stack);
printf("創建成功,棧的大小為:%d" , stack.stacksize);
return 0;
}
運行結果:

