ZHCUAU3J January 2018 – March 2024
被调用函数(子函数)必须执行以下任务:
无论是在调用函数时(以便结构体参数作为地址传递)还是在声明函数时(以便函数知道将结构体复制到本地副本),都必须注意正确地声明接受结构体参数的函数。
通过这种方式,调用方可以用睿智的方式告知被调用函数从哪里返回结构体。例如,在语句 s = f(x) 中,其中 s 是一个结构体,f 是一个返回结构体的函数,调用方实际上可以像 f(&s, x) 那样进行调用。然后,函数 f 将返回结构体直接复制到 s 中,并自动执行赋值。
如果调用方不使用返回结构体值,则可以将地址值 0 作为第一个参数进行传递。这会指示被调用函数不要复制返回结构体。
无论是在调用函数时(以便传递额外参数)还是在声明函数时(以便函数知道复制结果),都必须注意正确地声明接受结构体参数的函数。