0
点赞
收藏
分享

微信扫一扫

学习笔记|2. C语言的常量变量

凌得涂 2022-01-30 阅读 51

2.1 定义变量的方法

int main()
   {
     //创建一个变量
     int age=20;//类型  变量的名字=数值
     return 0;
   }

2.2 变量的分类:局部变量与全局变量

2.2.1 全局变量

int main之外,在所有函数外部定义的变量成为全局变量(Global Variable),它的作用域默认是整个程序,也就是所有的源文件。

2.2.2 局部变量

int main之内,定义在函数内部的变量称为局部变量(Local Variable),它的作                               用域仅限于函数内部, 离开该函数的内部就是无效的,再使用就会报错。

//全局变量与局部变量会发生冲突

#include<stdio.h>

    int a=100

    int main()
    {
      //在大括号内部的变量都是局部变量
      int a=20;
      printf("%d\n",a);
      return 0;
    }
    //此时终端会输出20(当局部变量和全局变量名字冲突的情况下,局部优先)
    //当然,不建议把全局变量和局部变量的名字写成一样的

2.3  变量使用的实例(以简单的相加sum为例)

#include<stdio.h>

int main()
  {
      int a;//a,b,sum这几个变量可以在一开始赋值,也可以不赋值,对后面的结果不会产生影响
      int b;
      int sum;
      scanf("%d %d",&a,&b);//输入的第一个数放到a中,第二个数放到b中
      sum=a+b;
      printf("sum=%d\n",sum);
      return 0;
  }
    

2.4  变量的作用域和生命周期

2.4.1 作用域

 一个变量可以被引用的范围(如全局作用域、文件作用域、局部作用域),哪里可以使用,哪里就是他的作用域
全局变量:整个工程(整个源文件下的.c文件都可以用,但要先声明——extern)
局部变量:变量所在的局部范围

#include<stdio.h>

int g_val=2022;//全局变量
//不可以在这写 printf("%d\n",g_val)  执行性的代码要写到main函数中

int main()
  {
   printf("1:%d\n",g_val);
   printf("hehe\n");
   {
       printf("2:%d\n",g_val);
       
       int a=10;//局部变量
       printf("a=%d\n",a);
   }
   printf("3:%d\n",g_val);

   return 0;
  }

2.4.2 生命周期

这个变量可以被引用的时间段。
全局变量:整个程序的生命周期
局部变量:进入作用域开始,出作用域结束

2.5  常量(不变的量)

分为字面常量、const修饰的常变量、#define定义的标识符常量、枚举常量

int main()
     {
       //字面常量
       3.14;
       10;
       "a";
       "abcdef";
     }
#include<stdio.h>

//const修饰的常变量

/*int main()
{
    int num=10;//num是变量
    num=20;
    printf("num=%d\n",num);//此时输出20

    return 0;
}*/

int main()
{
    const int num=10;//此时num为const修饰的常变量,num值不能被修改(常属性,不能被改变的属性)
    //num=20;
    printf("num=%d\n",num);//此时输出10
    //const 修饰的常变量在C语言中只是在语法层面限制了变量num不能直接被改变,但是num本质上还是一个 
      变量,所以叫常变量。

    return 0;
}
#include<stdio.h>

//define定义的标识符常量

#define MAX 10000//define也可以放在main函数里

int main()
{
    int num=MAX;
    printf("%d\n",num);

    return 0;
}
#include<stdio.h>

//枚举常量,用性别来举例

enum Sex
{
    MALE=3,//赋初值
    FEMALE,
    SECERT
    //枚举一下这个变量的可能取值
};

int main()
{
    enum Sex s=MALE;
    printf("%d\n",MALE);
    printf("%d\n",FEMALE);
    printf("%d\n",SECERT);
    //可以看到输出之后各个变量的值0、1、2
    //枚举常量的值默认是从0开始,可以在enum处赋值

    return 0;
}
举报

相关推荐

0 条评论