c 语言堆栈模拟初始化
时间: 2023-07-09 16:42:06 浏览: 112
栈的初始化和相关操作
在 C 语言中,可以使用数组来模拟堆栈的实现。堆栈的初始化操作就是将数组的下标清零或者指向栈底的指针设置为数组的起始地址。示例代码如下:
```c
#define STACK_SIZE 100 // 堆栈最大容量
int stack[STACK_SIZE]; // 堆栈数组
int top = -1; // 栈顶指针
// 初始化堆栈
void initStack() {
top = -1; // 将栈顶指针初始化为-1
memset(stack, 0, sizeof(stack)); // 将堆栈数组的所有元素清零
}
```
在这段代码中,我们定义了一个最大容量为 100 的堆栈数组 `stack`,以及一个表示栈顶位置的指针 `top`,初始值为 -1。`initStack()` 函数用于初始化堆栈,其中将栈顶指针 `top` 设置为 -1,表示堆栈为空;同时使用 `memset()` 函数将堆栈数组的所有元素清零,以便后续操作。
阅读全文