码迷,mamicode.com
首页 > 其他好文 > 详细

C的参数传递

时间:2015-09-12 00:43:29      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:

在函数调用前的准备工作就是把相关参数压入栈,如果参数的尺寸是原子单位(32位的系统为32为,64位的系统为64位),但如果传入一个结构体,尺寸大于原子单位,那么就不是一个push指令就能搞定,这时候堆栈的空间还是会被占用,编译器会把结构体的值传入(拷贝)进开辟的堆栈空间,这就能明白为什么参数传递,在参数的质量大于原子单位的时候最好使用指针。如果不使用指针,那么堆栈的消耗会很严重,如果函数调用深度和频度增加,Stack Overflow是迟早的事。

C的参数传递

标签:

原文地址:http://www.cnblogs.com/qscoding/p/4802329.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!