pianoer 发表于 2018-1-26 21:04:11

初学指针,请大佬解答


请问在对外部函数内的参数的值进行改变的时候,在主函数的给他的实参的变量却没有改变;
但相同的道理为什么不能用在数组上,我改变了外部函数的数组内一个元素的值但是主函数内的那个数组的元素值也发生了?

ba21 发表于 2018-1-26 21:09:32

数组传的是地址。n 传的是值      n在主函数和在exchange内是两个不同的变量,只是同名而已。

pianoer 发表于 2018-1-26 21:15:08

看来这个指针一样啊,直接改变地址所在的值

laihoo 发表于 2018-1-26 21:49:41

呃,数组名是地址

waitforlove 发表于 2018-1-29 17:46:08

数组做参数不是你那样写的把
数组名是数组第一个成员的地址
int a[]
*a=a    *(a+sizeof(int))=a   *(a+sizeof(int)*2)=a这样懂了把
页: [1]
查看完整版本: 初学指针,请大佬解答