【最受欢迎最容易理解的初阶c语言教学】1.变量及作用域

        大家好,我是想要慢慢变得优秀的向阳同学,很希望能和大家一起慢慢变得优秀,如果觉得我的博客写的还不错,可以关注我~~,一起努力进步!!!当然如果有问题想问博主或者如果博客内容有问题,欢迎大家私聊或者在下方提出问题,我会积极的回复哦~


今天我们要学习的变量,提到变量,我们非常想知道变量是怎么定义的呢?即定义方式

变量=数据类型+变量名

目录

数据类型

变量与常量

常量与变量的区别:

 变量的使用:

变量的分类及其作用域和生命周期 :

局部变量

全局变量

特殊情况



首先我们先学习一下:

数据类型

       这时候就肯定有人要问了:这些专有名词都是什么啊?不要着急,让我一一解释。

字符:可以简单认为是一些标点符号和字母以及0~9的简单数字

例如:a A 3 ! 等等


整型:可以简单认为是可正可负的整数

例如:15  2101  -50等等


浮点数:可以简单认为是可正可负的实数(带保留小数点的整数或小数)

例如:-50.00000  33.33333等等


       这时候肯定又有人要问了:为什么分这么不同的类型呢?

因为每种类型大小不同!

#include <stdio.h>
int main()
{
    printf("%d\n", sizeof(char));
    printf("%d\n", sizeof(short));
    printf("%d\n", sizeof(int));
    printf("%d\n", sizeof(long));
    printf("%d\n", sizeof(long long));
    printf("%d\n", sizeof(float));
    printf("%d\n", sizeof(double));
    printf("%d\n", sizeof(long double));
    return 0;
}

根据它们不同的大小,去适当的应用它们,不要出现大材小用的情况哦~

       ps:c语言语法规定sizeof(long)>=sizeof(int),每个编译器可能会出现不同的情况,但只要符合c语言标准即可!~


        有了前面的铺垫,我们接着学习正式内容:

变量与常量

常量与变量的区别:

变量:就是符合变量定义形式,且可以改变的量

例如:整型变量名a从10变为了20

           字符变量名ch从a变为了b


常量:顾名思义就是不可以改变的量

      当常量20赋给了常量10的时候报错,说明常量不可改变,不可赋被值


 变量的使用:

      变量定义后,即可初始化常量或者表达式(当然定义的时候也可以初始化)这里的初始化可以理解为第一次赋值。

int main()
{
	int a = 10;//变量的定义同时+初始化
	int b;//变量的定义
	a = 10;//赋值常数也可以   a=b;赋值已经初始化的变量(不然会报错);
	
	return 0;
}

变量的分类及其作用域和生命周期 :

  • 局部变量

有多少人简单的认为局部变量就是在main函数内部的变量!

       看代码回答问题:如果你认为局部变量就是main函数内部的变量,那么输出的结果是不是就是10?

#include<stdio.h>
int main()
{
	
	{
		int a = 10;
	}
	printf("%d", a);

	return 0;
}

 然而结果却是

 如果这个问题曾经是你的思想误区,请点一个赞👍,如果还想继续看这种文章可以关注一下博主


 局部变量:在它属于它的局部范围内

      简单来说就是在{   }从大括号内定义的变量就属于局部变量,{  }属于它的局部范围,从   {出现开始生成并起作用,到     }出现结束并不再起作用

这也就是局部变量的作用域及其生命周期!

作用域:变量起作用的区间


生命周期:变量开始生成到最后结束的区间

      ps:不要将作用域和生命周期认为是一个东西,因为有时候存在并不一定起作用,像const修饰的局部变量(以后会讲到)


  • 全局变量

全局变量的位置可以简单认为在所有{  }以外定义的变量


全局变量的生命周期及其作用域:从程序的开始到程序的结束


  • 特殊情况

局部优先法则:使用变量的时候,如果全局与局部同时定义相同名字的变量,则优先使用局部变量


#include<stdio.h>
int a = 20;
int main()
{
	int a = 10;
	printf("%d", a);

	return 0;
}


结语

      非常感谢大家很耐心地看到这里,能看到这里的读者,你在我心里永远的最棒的!~

“我一定要成为最伟大的国王!”

                                                                                    ——国王排名-波吉

你就像是那个逆流而上孤勇追梦的波吉,希望我们都可以达到梦想的彼岸!

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

想要慢慢变得优秀的向阳同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值