void qwe(int *q,int c)
{
*q=(*q)*10;
c=c+2;
}
int main()
{
inta=3,b=5;
int*p;
p=&a;
f2(p,b);
printf(“%d%d”,a,b);
return0;
从本例可获得如下两点启示:
在被调函数中可以改变实参指针变量所指向变量的值。
这样一来,main通过调用qwe改变了局部变量a的值。
下面来回顾是如何做到的。
①在主函数中定义指针变量p,并使其指向要改变的变量a。
②以指针变量p作为实参调用函数qwe,
从而把变量a的地址传递给qwe。
④在函数qwe中,利用*q实现对变量a的
修改、访问。
⑤调用结束后,主函数中可使用变量a
的新值。
③函数qwe中增加指针变量q作为形参,
以接收a的地址。
eg编写交换两个变量值的函数。