关于c语言出栈问题

关于c语言出栈问题这里为什么要把e定义为一个指针变量呢?不明白,返回要删除的元素,直接用一个int型变量e就行了呗!... 关于c语言出栈问题这里为什么要把e定义为一个指针变量呢?不明白 ,返回要删除的元素 ,直接用一个int型变量e就行了呗! 展开
 我来答
GTA小鸡
高粉答主

2018-05-07 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2.6万
采纳率:78%
帮助的人:1.3亿
展开全部
pop函数需要向外界传递两个信息:①出栈操作成功与否;②出栈的元素的值。①可以通过返回值传递给外界,那么②呢?C语言中函数只能有一个返回值,不可能既返回a又返回b,当然你可以通过返回一个结构体当中封装了这两者来实现,但这太麻烦不符合函数初衷,所以②就通过函数的第二个参数传递给外界,即出栈的元素的值保存在参数2中。既然如此,参数2必然要做到能够修改外界实参的值,而如果使用ElemType类型,在函数中修改形参的值不可能影响到外部实参,所以必须使用ElemType*指针类型,并传递外部实参的地址作为参数,然后通过指向实参的指针去修改实参的值。
更多追问追答
追问
那这个指针e在主函数中原来是指向谁呢?
追答
指向需要用来保存出栈的元素值的那个变量。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式