#include <stdio.h>
void chuancan(int *s1,int *s2);
int b; //全局变量 、静态变量初始值为0
void shiyan()
{
int s1,s2;
printf("s1的值:%d s2的值:%d\n",s1,s2);// 部变量,自动变量初始值随机分配
printf("s1的地址:%p\n",s1);
chuancan(&s1,&s2);
printf("%d %d\n",s1,s2);
}
void chuancan(int *s1,int *s2)
{
printf("*s1的值:%d *s2的值:%d\n",*s1,*s2);
*s1=3;
*s2=5;
}
int main()
{
shiyan();
printf("b的值是:%d",b);
return 0;
}
复制粘贴此段代码试一下就明白了。
//结论:int s1;(这句话在声明变量的时候,给a分配了存储空间,且a也有了地址,后面在传递参数的时候,可以直接
//写&s1,来取地址)
//全局变量 、静态变量初始值为0
//局部变量,自动变量初始值随机分配