帮忙解释一下 有点不明白
#include <stdio.h>
int a;
int funf(int i)
{
a+=2*i;
return a;
}
int main(void){
int a=10;
printf("%d,%d\n",funf(a),a);
return 0;}
为什么输出的是20,10 怎么不是30,10
[解决办法]
#include <stdio.h>
int a;
int funf(int i)
{
a+=2*i;//这点的a值是全局变量默认的0值,其实就是语法规则
return a;
}
int main(void){
int a=10;
printf("%d,%d\n",funf(a),a);
return 0;}