变量

变量

  • 变量分为全局变量和局部变量
    • 全局变量:定义在函数外部,程序开始到结束一直都在
    • 局部变量:定义在函数内部,在函数内部有效
定义变量
  • 定义变量(声明),任何变量在使用之前,必须先进行定义
  • 定义变量的目的:在内存中分配一块存储空间给变量,方便以后存储数据
  • 如果定义多个变量,就会为这多个变量分配不同的存储空间
  • 定义变量有两种格式:
    • 格式一:变量类型 变量名称
    int a;
    float b;
    char ch;
    
    • 格式二:变量类型 变量名称,变量名称....
    int a,b;
    int a,b,c,d;
    
  • 声明变量的注意点:
    • 命名规则
    • 命名规范
初始化
  • 变量第一次赋值我们称为初始化,使用变量之前,必须声明之后初始化,否则不能使用
  • 变量中不能随便存储数据,赋值的数据要和变量的类型一致
  • 初始化的两种形式:
    • 先定义后初始化
    int value;
    value = 998;
    
    • 定义的同时进行初始化
    int a = 10;
    int a, b = 10;
    int a = 4, b = 2;
    
    • 其他表现形式
    // 批量初始化
    int a,b,c;
    a = b = c = 10;
    
作用域
  • C语言中所有变量都有自己的作用域,声明变量的类型不同,其作用域也不同,C语言中的变量,按照作用域的范围可分为两种,即局部变量和全局变量
局部变量
  • 局部变量也称为内部变量,局部变量是在函数内部定义说明的,其作用域仅限于函数内部(代码块内部)
  • 在主函数中定义的变量也只能在主函数中使用,不能再其他函数中使用,同时主函数中不能使用其他函数定义的变量
  • 形参变量是属于被调用函数的局部变量,实参变量是属于主调函数的局部变量
  • 允许在不同的函数中使用相同的变量名,他们代表不同的对象,分配不同的内存,互不干扰,也不会发生混淆
变量占用存储空间
类型 16位编译器 32位编译器 64位编译
char 1 1 1
int 2 4 4
float 4 4 4
double 8 8 8
short 2 2 2
long 4 4 8
long long 8 8 8
void* 2 4 8
变量的取值范围
  • 不同数据类型所占用的存储空间是不一样的,字节长度一样,包含的二进制位数就不一样,能表示的数据范围也不同
  • 如果赋值的时候超出了变量的取值范围,那么将损失精度,得到不是我们想要的数据
类型 所占字节 表示范围
int 4 -2(31) ~ 2(31)-1
signed short int 2 -2(15) ~ 2(15)-1
signed long int 4 -2(31) ~ 2(31)-1
unsigned int 4 0 ~ 2(32)-1
unsigned short int 2 0 ~ 2(16)-1
unsigned long int 4 0 ~ 2(32)-1
float 4 精度7位
double 8 精度16位

你可能感兴趣的:(变量)