3-初识常量变量

常量

常量-不能改变的量/不变的量。

注:因为数组的定义是需要申请内存空间的,数组有多少给数必须是常量才能申请内存空间

常量的分类大概分为以下几类:

1.字面常量(数字、字符串)

2.const修饰的常变量

  int num = 10;//这是变量

  const int num = 10;//这是const修饰常变量,const把num这个变量的值给固定了,让它有了常属性,所以称之为常变量

3.#define定义的标识符常量

#define Max 1000
#include <stdio.h>
int main()
{
	int n = Max;
	printf("sum=%d\n", n);
	return 0;
}

4.枚举常量

 关键字是enum,枚举是指可以一一列举的常量

#include <stdio.h>
enum Sex
{
	//以下三个值就是枚举常量
	//枚举常量默认从0开始排。
	//枚举常量的值可以在枚举结构体内修改,如果改man为10,则后面的woman则是11....
	MAN,
	WOMAN,
	SECRET
};
int main()
{
	enum Sex s=MAN;
	printf("%d\n", MAN);//这里输出是0
	printf("%d\n", WOMAN);//这里输出是1
	printf("%d\n", SECRET);//这里输出是2
	return 0;
}

变量

变量-能被改变的量
    变量分为局部变量和全局变量
    在大括号{}内部定义的变量就是局部变量
    在大括号{}外部定义的变量就是全局变量

  全局变量在整个工程中是可以用的(如果要在另一个源文件中使用,则需要extern声明)
    *当局部变量和全局变量名字冲突的情况下,局部优先

#include <stdio.h>
int a = 233;//这是全局变量
int main()
{
	int a = 23;//这是局部变量
	int agr = 20;//这里的age就是一个变量
	// 类型 变量名字=number
	// 类型 变量名字(可以这样,但是不推荐)
	double weight = 85.6;
	printf("%lf\n",weight);
	printf("%d\n",a);
	return 0;
}

/*
%d - 整型
%f - float
%lf - double
*/

 

Scanf函数的使用

Printf(printfuction)函数是用来打印。而scanf函数则是用来输入

scanf的使用方法很简单。格式如下(&代表取地址)

scanf("%输入类型 %输入类型",&被链接到的变量,&被链接到的变量)

scanf的使用报错

解决办法1

遇到这种error信息,打开项目属性-C/C++-常规-SDL检查改为否即可

解决办法2

在代码第一行加入

解决办法3

把scanf函数换成VS自己的scanf_S函数,如此便可以运行,但是在其他平台运行不了

变量的作用域和生命周期

作用域

变量在哪里可以使用哪里就是它的作用域。

举例:如下图所示,变量a只能在大括号内部使用

生命周期

一个人的生命周期是指从出生到死亡。

一个变量的生命周期是指从创建到销毁的时间段

局部变量的生命周期其实是进入所在的局部范围(作用域)开始,出作用域则结束。

全局变量的生命周期其实是进入进入main函数开始,main函数结束则全局变量销毁。

一个程序的入口是main函数,结束也是以main函数结束

 

posted @ 2022-08-31 22:09  裆朝大学士  阅读(3)  评论(0)    收藏  举报