【发布时间】:2023-03-27 18:53:02
【问题描述】:
我有一个问题,程序给出了“表达式必须有指针类型”之类的错误。你能帮帮我吗?
struct stack{
int i_data;
char c_data;
struct stack *next;
}top;
void push_i(struct top *newptr,int info){
newptr=(struct top*)malloc(sizeof(top));
if(newptr!=NULL){
top->c_data=NULL;
newptr->i_data=info;
newptr->next=*top;
*top=newptr;
}
【问题讨论】:
-
这段代码还有很多错误。你为什么要传入 newptr 呢?如果意图是返回分配的内存,那么它应该是 ** 并且函数中的所有 newptr 实例都应该是 *newptr,如果代码中的每一行都被破坏了,那么这里就大错特错了。
-
您在使用 Visual Studio 吗?你是否在某处设置了断点?