“指针变量作为函数参数的作用:将一个变量的地址传送到另一个函数中”这句话怎么理解?

问题描述:

“指针变量作为函数参数的作用:将一个变量的地址传送到另一个函数中”这句话怎么理解?
1个回答 分类:综合 2014-10-21

问题解答:

我来补答
函数的参数传递有三种方式:值传递,指针传递,引用传递
假如定义一个函数 func(int a)
现在有一个整型变量int x = 8;
1、值传递:func(x),就是调用函数时将x的值传入函数,注意!这时传入的是x变量的副本,而不是x变量本身,虽然副本和本身的值一样,但是存储地址不一样,所以对副本的改变不会影响本身.
2、指针传递:直接将变量x的地址传入,这是func()函数要改写,func(int *a);然后定义一个指针
指向x :int *px = x;此时调用func(px),因为传入的是x的地址,所以此x就是确定的,更改指针所指位置的值,也就更改了x的值
再问: 2、指针传递 不太懂哦
再答: 这么来说吧,如果有两个变量int x=4;int y=4;那么计算机如何区分这两个值相等的变量呢?所以计算机给两个不同的变量分配了两个不同的地址,地址是唯一的。用值传参只是传的4这个值,而指针传的是变量的地址,函数就会修改地址所在位置变量的值。
 
 
展开全文阅读
剩余:2000