标题:关于C函数返回值的问题
只看楼主
Tomorrw_I
Rank: 10Rank: 10Rank: 10
等 级:禁止访问
威 望:6
帖 子:406
专家分:1712
注 册:2018-10-16
得分:0 
不好意思!刚才还回答问题!你这回复一出!我也拒绝回答!
你就当我不懂吧

学C有用吗?
学C++有前途吗?
数据库有必要学吗?
……
别问,你还什么都不会,学就对了
……
2018-11-23 09:26
wlxy_wang
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:77
专家分:303
注 册:2018-11-2
得分:0 
回复 8楼 Tomorrw_I
你的部分回答我是认同的,这里回答与否完全是自愿的,一个问题是否有答案也是随机的,但如果你知道答案,并且愿意给出答案,我感谢你,但如果你不能给出正确答案,那么请你谦虚一点,你有什么权利在这里教训其他人呢?至于你说的,学完内存模型,学完汇编等这个问题完全不是问题这个说法,那么我就认为你是学完这些知识了,但你给的回复依然是错的。请谦虚!!!!
2018-11-23 09:28
wlxy_wang
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:77
专家分:303
注 册:2018-11-2
得分:0 
回复 11楼 Tomorrw_I
就像你说的那样,回答与否是自愿的,没有人强迫谁去回答。
2018-11-23 09:31
Tomorrw_I
Rank: 10Rank: 10Rank: 10
等 级:禁止访问
威 望:6
帖 子:406
专家分:1712
注 册:2018-10-16
得分:0 



话不多说,告辞

学C有用吗?
学C++有前途吗?
数据库有必要学吗?
……
别问,你还什么都不会,学就对了
……
2018-11-23 09:33
wlxy_wang
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:77
专家分:303
注 册:2018-11-2
得分:0 
回复 14楼 Tomorrw_I
完全不懂!!!!
2018-11-23 09:40
wlxy_wang
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:77
专家分:303
注 册:2018-11-2
得分:0 
难道是微软的编译环境除了问题了吗?跟某版主给出的不同!!
2018-11-23 09:48
wlxy_wang
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:77
专家分:303
注 册:2018-11-2
得分:0 
回复 7楼 lin5161678
理论谁都会看,正因为理论解释不了才在这里问的。
引用了CSDN中某位作者的关于无return返回值情况的一些结论
C中函数调用的时候的会将实参从右向左依次入栈,这么做的好处是有利于可变参数实现,调用无参函数时可以传参,但是函数内取不到参数的值。而有参函数必须保证实参和形参数量一致,否则会报参数过多或过少的错误。
如果传入的参数是变量,则依次放在eax寄存器中,根据上面的入栈顺序,就是说eax中保存的是第一个参数的值;如果传入的参数是直接量,则不会使用eax寄存器,也就是说上面的test2(a)和test2(1)在传参的时候,只有前者会将1保存在eax中。
使用return关键字会将右边表达式的结果保存在eax寄存器中,如果不写return,则eax中可能是之前传入参数的值,也可能是上一次return的值,看情况分析。
---------------------
作者:ZeaLot4J
来源:CSDN
原文:https://blog.
版权声明:本文为博主原创文章,转载请附上博文链接!

[此贴子已经被作者于2018-11-23 10:32编辑过]

2018-11-23 10:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-491454-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.397398 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved