局部變量與全局里問題在里面大神來(lái)教一下小白啊
#include <stdio.h>
int x = 1;
int fn1(int x)
{
int y,z;
z = 2;
y = x+z;
printf("y=%d\n",y);這個(gè)為局部變量我知道但是為什么最后y=4它沒有定義x為多少啊
return 0;
}
int main()
{
fn1 (2);
int y = 10;
printf("x+y=%d",y+x);
getchar();
}
#include <stdio.h>
int x = 1;
int fn1(int x)
{
int y,z;
z = 2;
y = x+z;
printf("y=%d\n",y);這個(gè)為局部變量我知道但是為什么最后y=4它沒有定義x為多少啊
return 0;
}
int main()
{
fn1 (2);
int y = 10;
printf("x+y=%d",y+x);
getchar();
}
2017-05-03
舉報(bào)
2017-05-03
在main函數(shù)中,
fn1 (2);
即定義了x = 2,然后在main函數(shù)中fn1(2)運(yùn)行了一遍,y=x+z=2+2=4.
整個(gè)過程是從main函數(shù)開始運(yùn)行的,雖然fn1()在main函數(shù)前定義,但是只是擺在前面供main函數(shù)之后調(diào)用,運(yùn)行的開始部位是int main()所在的地方。