C 语言:调用函数时,函数参数压入堆栈的顺序:从左到右还是从右到左?

 我来答
百度网友8bd8f8b17
2006-11-05 · TA获得超过1326个赞
知道小有建树答主
回答量:1582
采纳率:100%
帮助的人:0
展开全部
标准C参数压栈次序是反向压栈,也就是从右到左。因为C要把不定参数...放在最右边,为了高效率定位参数,所以只能从右到左压栈,这样第一个参数最靠近栈顶。

比如printf (const char * szFormat,...);如果从左到右压不容易找到第一个参数szFormat

不过16位操作系统的时候,调用API函数时,微软的vc曾经支持过一种从左到右的压占次序,现在32位系统没有了。
允淳静jA
2006-11-05 · 超过44用户采纳过TA的回答
知道答主
回答量:208
采纳率:100%
帮助的人:0
展开全部
参数从右向左压入堆栈

参考资料: http://ranmei.spaces.live.com/blog/cns!3469476C7EBE9183!296.entry

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友32cdd9945
2006-11-05 · TA获得超过1374个赞
知道大有可为答主
回答量:2429
采纳率:100%
帮助的人:1922万
展开全部
两种都有可能,看你怎么定义函数的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式