说人话就是变量在哪起作用
- 全局变量:在函数外定义的变量
- 局部变量:在函数中定义的变量
- 程序块中的变量:在函数内部的复合语句中定义的变量
int g_max = 10;//全局变量,从定义的这一刻起,向下都可以使用
//注意!!!如果将该变量定义在最下方,即使它是全局变量也不能编译通过
void fun() {
//a是局部变量,作用域只在该函数内
int a = g_max;//可以使用全局变量int
}
int main() {
//x是局部变量,作用域只在该函数内
int x = g_max;//可以使用全局变量部变量
return 0;
}
//可以编译通过,因为这两个变量的作用域不同
void fun() {
int sum = 10;
}
int main() {
int sum = 100;
return 0;
}
void fun() {
int a = 6;
int sum = 10;
}
int main() {
int sum = 100;
a = sum + 6;//不能编译通过,这个时候a是未定义的,因为在该函数内未声明,而在他上面的函数中声明
return 0;
}
int main() {
int x = 100;
int sum = 10;
{
int z = 10;
z = 100;
}
x = z + sum;//编译不能通过,因为z是在上面的块中定义的,出了这个块就不起作用了
return 0;
}
//不能编译通过,因为在相同作用域内不可以使变量同名
int g_max = 10;
int main() {
return 0;
}
int g_max = 100;