c中定义一个(int a)变量具有二义性,本质上是分配一个地址空间,在里面存了一个值。
为了避免歧义,c规定了a是值,&a是地址空间。
指针指向一个地址。
这里*a代表指向的那个地址里存的值,a是指向的那个地址。
void tes(int *i){
*i=2;
}
int main(int argc, char *argv[]){
int a=4;
int* s = &a;
tes(s);
printf("%d\n",*s);
printf("%d\n",s);
}
上面代码通过传入地址改变传入的值,输出*s为2,s为地址。
本文深入探讨了C语言中指针的基本概念及其使用场景,特别是如何通过传入变量地址来改变其值。通过一个具体示例,解释了在函数中如何使用指针来修改传入参数的值,展示了指针在C语言编程中的强大功能。





