永发信息网

void add(int a,int b) { int c; c=a+b; _asm mov eax, c; }

答案:2  悬赏:70  手机版
解决时间 2021-01-23 09:58
  • 提问者网友:爱了却不能说
  • 2021-01-22 11:55
解释下这句_asm mov eax, c;
_asm是什么意思?eax可不可以换成其他的?有哪些可以换?
兄弟姐妹们,快呀,谢谢啦~
最佳答案
  • 五星知识达人网友:持酒劝斜阳
  • 2021-01-22 12:02
_asm是内联汇编的意思
mov eax,c 是汇编代码,意思是把c的值传递给eax寄存器,eax里的值就相当与函数的返回值了
该返回值可供条用add函数的父函数引用。
如何引用,当然还是用内联汇编啦~~

你要是想换的话也不是不可以,就是可能会导致程序不稳定
可以换成ebx,ecx等等,不过一般用eax来承载函数的返回值
全部回答
  • 1楼网友:猎心人
  • 2021-01-22 12:54
你好! 调用fun函数时,是将p和q的值(x和y的地址)传给了a和b。注意,这里p的值和q的值传递过去了,p和q的值会变吗?不会。所以p和q仍然分别指向x和y 我的回答你还满意吗~~
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯