将指针传递给函数时,无需返回已修改的数据。该函数将引用内存地址,而不是直接引用值。通过使用地址,可以在不返回的情况下操纵地址中存储的信息值。
示例代码
#include <stdio.h>
void discount(float *a);
int main()
{
float price = 42.99;
printf("商品的售价为:$%.2f\n",price);
discount(&price);
printf("打9.0折,最终售价为:$%.2f\n",price);
return(0);
}
void discount(float *a)
{
*a = *a * 0.90;
}
执行上面示例代码,得到以下结果:
商品的售价为:$42.99
打9.0折,最终售价为:$38.69
discount()
函数是原型,它需要float
类型的指针变量作为唯一参数。在函数内,指针变量a
用于检查传递的内存位置的值。