不吃鱼的羊 2024-12-05 17:19 采纳率: 0%
浏览 9

C语言有入参无返回值

有入参有返回值函数在没有返回值的时候返回值为什么是第一个入参
有一行代码
ReturnValue = rx->callOut(Id,4096);

rx->callOut指向的是一个函数,源代码如下:
uint16 CalloutFunction(uint16 id,uint16 num)
{
}

1、这个接口应该需要一个布尔类型的返回值,但是之前的同学写了个空函数,不知道为什么会编译成功。
2、在运行的时候看到代码通过打断点的方式看到执行进CalloutFunction函数,但是查看返回值的时候看到ReturnValue会跟第一个入参Id相同,为什么会出现这样的现象?

  • 写回答

1条回答 默认 最新

  • 赵4老师 2024-12-05 17:55
    关注

    返回值到底是多少,决定于AX/EAX/RAX寄存器的值是多少。

    评论

报告相同问题?

问题事件

  • 创建了问题 12月5日