在C语言中定义变量的方法:
类型+变量名=赋的值
变量它又分为全局变量和局部变量,其中在括号外面的指的是全局变量,在括号内的的是局部变量。
例: #include<stdio.h>
int num2 = 20;
int main()
{
int num1 = 10;
printf(" % d\n", num1);
//printf("%d\n",num2);
return 0;
}
其中int num2=20;这种定义在代码块({})之外的变量称为全局变量
intnum1=10;这种定义在代码块({})之内的变量称为局部变量
对于在写代码时,局部变量和全局变量名字相同时,局部变量优先。
所以对于局部变量和全局变量来说,名字建议不要相同,容易误会产生BUG
例:
#include<stdio.h> int a = 10; int main() { int a = 100;
}
变量的使用
例:#include <stdio.h> int main() { int num1 = 0; int num2 = 0;
如例子中的对计算多个数的和的应用,不过在程序写的过程中要注意到
输入数据使用的函数为输入函数 scanf
取地址符号为&
变量要定义在当前代码块的最前面。
关于变量的作用域和生命周期
作用域是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效的;而限定这个名字的可用性的代码就是这个名字的作用域。
1.局部变量的作用域是变量所在的局部范围
2.全局变量的作用域是整个工程(是跨越源文件的)
例:
#include <stdio.h>
int main()
{
int num = 0;
printf("%d\n", num);//num为定义的局部变量
return 0;
}
又有如
#include <stdio.h>
int main()
{
int num = 0;
{
printf("%d\n", num);
}
return 0;
}
从以上两种的代码运行可知,局部变量的作用域为所定义的位置在哪里,在他定义的任意范围内都可以使用
关于全局变量的作用域
例:
源文件1:
#include <stdio.h>
int main()
{
extern int g_val;
printf("g_val=%d\n", g_val);
return 0;
}
源文件2:
int g_val = 2021;
程序运行可得
生命周期: 变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束
全局变量的生命周期:整个程序的生命周期。