tyl555 发表于 2022-7-30 12:45:34

栈的链式存储

本帖最后由 tyl555 于 2022-7-30 18:43 编辑

//栈的链式存储,编译显示未定义标识符top,可我明明申明了的?
#include<iostream>
#include<malloc.h>
#define max 100
typedef struct {
        int* top;
        int* base;
        int maxsize;
}s;
s Inistack(s p)
{
        p.base = (int*)malloc(max * sizeof(int));
        if (!(p.base))
        {
                exit(0);
        }
        p.top = p.base = 0;
        p.maxsize = max;
        return p;
}
void creatstack(s p)
{
        int x;
       
        while (max)
        {
                scanf_s("%d", &x);
                *(s.top) = x;
                top++;
                max--;
        }
}
int main()
{
        s p;
        creatstack(p);
        return 0;
}

dolly_yos2 发表于 2022-7-30 12:55:49

仔细看看 creatstack 函数中循环内部的 top ,在哪声明的?
看到报错信息至少先把提示内容通读一遍,到代码对应的位置把附近的相关代码读一读,想一想,不要太早就开始考虑提问。

tyl555 发表于 2022-7-30 22:22:53

dolly_yos2 发表于 2022-7-30 12:55
仔细看看 creatstack 函数中循环内部的 top ,在哪声明的?
看到报错信息至少先把提示内容通读一遍,到代 ...

感谢大佬,我悟了
页: [1]
查看完整版本: 栈的链式存储