指针传的是地址,从而可以修改该地址下存储的值; y 实参和形参指向的是同一块地址;而x传的是值,仅仅做了赋值操作,而形参的作用域只在调用函数内
【以下回答由 GPT 生成】
答案是: A) x = 10.200000, y = -3.200000
这是因为在C语言中,函数参数传递有两种方式:值传递和地址传递。值传递是指将实际参数的值复制给形式参数,形式参数在函数内部进行操作不会影响到实际参数。而地址传递是指将实际参数的内存地址传递给形式参数,形式参数可以通过指针来修改实际参数的值。
在这个例子中,变量x作为实际参数通过值传递的方式传递给函数sub,所以在sub函数内部,对a的修改不会影响到x的值。而变量y作为实际参数通过指针的方式传递给函数sub,所以在sub函数内部,可以通过指针pb来修改y的值。
具体来说,函数sub中的操作是将a的值减去指针pb所指向的变量的值,并将结果赋值给a,然后将指针pb所指向的变量的值减去a,并将结果赋值给指针pb所指向的变量。因此,最终输出的结果是x = 10.200000, y = -3.200000。