重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
如果该数值是 子函数的局部变量,可以声明为static类型的局部变量,可以保证在该子函数结束后,该变量的值保持在函数结束时的数值不变。
成都创新互联公司是一家专注于成都网站建设、网站建设与策划设计,南州晴隆网站建设哪家好?成都创新互联公司做网站,专注于网站建设十余年,网设计领域的专业建站公司;建站业务涵盖:南州晴隆等地区。南州晴隆做网站价格咨询:18982081108
如果是非static局部变量,可以使用全局变量进行保存,跟踪该变量的值。
如果没有全局变量,可以使用函数返回,将该变量作为返回值,或者使用引用参数返回该变量值。
两种方法.
一:
把a作为参数传递给sss();
int sss(int x)
{x ;
}这样仅仅只是使用a的值,是把a的值复制给x,使x的值等于a,可以在子函数中使用a的数值,但无法改变主函数中a的值.
二,
使用指针.声明一个指针指向a,把a的地址作为参数传递给子函数,那么在子函数中不但可以使用a的值还可以修改主函数中a的值.
#includestdio.h
int main()
{
int f(); //子函数的声明
int a=f(); //得到子函数计算的结果(就是调用子函数)
printf("%d",a); //输出a的值
}
int f() //子函数的实现
{
int a; //声明整形变量a
a=1+1; //计算得到a的值
return a; //返回a的值(若不返回,在主函数中不能得到这个值)
}
其中这里有个误区,就是在子函数和主函数中 变量用了一个字母,很容易误导新人以为那是一个变量,其实不然,子函数中的a在函数调用结束就已经不在了,主函数中的a又是另外一个变量。也可以不定义成一样的字母,容易区分一点。
#includestdio.h
int main()
{
int f(); //子函数的声明
int a=f(); //得到子函数计算的结果(就是调用子函数)
printf("%d",a); //输出a的值
}
int f() //子函数的实现
{
int a; //声明整形变量a
a=1+1; //计算得到a的值
return a; //返回a的值(若不返回,在主函数中不能得到这个值)
}
其中这里有个误区,就是在子函数和主函数中 变量用了一个字母,很容易误导新人以为那是一个变量,其实不然,子函数中的a在函数调用结束就已经不在了,主函数中的a又是另外一个变量。也可以不定义成一样的字母,容易区分一点。