C++中,为什么形参和实参个数要相同?形参不能被反复被调用吗
1个回答
展开全部
以下为个人见解,长时间不接触编程,可能不是很准确!
调用函数的时候,程序将实参的值赋值给形参,从而使得函数中的数据处理能够进行,如果实参个数和形参不等,则会导致数据无法传递,形参的值不能确定,从而函数无法正常运行!
所谓的形参和实参个数相同是指每次调用的时候,实参的个数和形参是相同的!而不是从整个程序中来看!
对于函数来说,一般在程序运行的开始时不分配空间的,只是放在函数的堆栈中,等调用的时候再具体分配内存空间,运行结束内存立即释放。因此,对于c=max(a,b)来说,运行时创建形参x.y的存储单元,运行完成将值赋值给c后,函数内存空间消除,同理d=max(e,f)运行时,创建新的存储单元x.y并将e.f的值传入,运行后将结果赋值给d,函数空间释放!从每次调用来看,函数里面的实参都是两个,不违背形参同实参个数相等的约定!
调用函数的时候,程序将实参的值赋值给形参,从而使得函数中的数据处理能够进行,如果实参个数和形参不等,则会导致数据无法传递,形参的值不能确定,从而函数无法正常运行!
所谓的形参和实参个数相同是指每次调用的时候,实参的个数和形参是相同的!而不是从整个程序中来看!
对于函数来说,一般在程序运行的开始时不分配空间的,只是放在函数的堆栈中,等调用的时候再具体分配内存空间,运行结束内存立即释放。因此,对于c=max(a,b)来说,运行时创建形参x.y的存储单元,运行完成将值赋值给c后,函数内存空间消除,同理d=max(e,f)运行时,创建新的存储单元x.y并将e.f的值传入,运行后将结果赋值给d,函数空间释放!从每次调用来看,函数里面的实参都是两个,不违背形参同实参个数相等的约定!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询