永发信息网

c++的函数引用

答案:4  悬赏:0  手机版
解决时间 2021-08-01 12:18
  • 提问者网友:杀生予夺
  • 2021-07-31 18:50

#include <iostream.h>
int &fun()
{
static int n;

return n;
}
void main()
{
fun()=10;

}
返回的是引用,请问执行return 返回值时把值放在寄存器里还是内存里

最佳答案
  • 五星知识达人网友:底特律间谍
  • 2021-07-31 19:25

在内存里


因为变量的值是放在内存里的


C++允许将局部变量放在CPU的的寄存器中


但必须用关键字 register 声明



int fac(int n)


{ register int i,j=1; //定义i和j 为 寄存器变量


for(i=1;i<=n;i++) j=j*i;


return j;


}


全部回答
  • 1楼网友:十年萤火照君眠
  • 2021-07-31 21:55

内存 汗。。。。。 这个好像根本牵涉不到 寄存器和内存吧。。。。

  • 2楼网友:低血压的长颈鹿
  • 2021-07-31 21:09
寄存器(准确地说是eax)
  • 3楼网友:长青诗
  • 2021-07-31 20:32

应该是在内存中,因为一般放到寄存器内的变量是寄存器变量比如 register a,是局部变量,而定义为寄存器类的变量应该选择一些使用频率高的变量。而上面说的返回值是静态类变量,全局变量!个人见解,希望对你有帮助!

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯