前言
俗话说C生万物,但是学好编程并不是只有c,必须还要学习好计算机语言、算法和数据结构、操作系统、计算机网络并且有实战加持。
什么是c语言
计算机语言由低级到高级的发展过程中 经历了 机器语言->汇编->B->C,c语言是其中一门以简易的方式变异、处理低级存储器的、产生少量代码不需要任何运行环境支持就能运行的编程语言。
c语言多用于底层开发,所谓底层开发多指 计算机操作系统驱动硬件进行工作,像qq 百度网盘等应用程序也可以用c开发。
第一个c语言程序
我写c语言用到的集成开发环境(IDE)是VS2022。
第一步:新建项目
第二步:选择空项目
第三步:配置新项目
a、项目名称最好不要使用中文
b、位置最好放置一个方便自己管理的文件夹
第四步:添加源文件,源文件名称后缀为.c才是c代码
第五步:可以写程序啦
#include<stdio.h>
int main()
{
printf("hehe\n");
return 0;
}
其中:main为主函数,程序执行入口;int表示函数返回类型,return 0系统默认返回0 该函数就没问题;{}包含的就是函数体; printf是打印函数,由于是库函数所以要引用头文件stdio.h。
数据类型
提到数据类型自然就会产生疑问,什么是数据类型?有多少种?每种数据类型大小又是多少呢?
首先要明白c语言代码是为了解决生活中的问题的,生活就包含了形形色色的问题,衣服的颜色,商品的价格、数目、生产日期等等,想要在代码中得到体现,就产生了数据类型,也要相应的为其开辟空间
#include<stdio.h>
char //字符数据类型
short //短整型
int //整形
long //长整型
long long //更长的整形
float //单精度浮点型
double // 双精度浮点型
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));
return 0;
}
其中规定只要求sizeof(long)>=sizeof (int)就可以。
变量、常量
上文我提到 c语言数据类型,是为了解决生活中的问题的,生活中有些值是不变的,就像血型、性别、身份证号、圆周率 同样有些值是变得就比如年龄、身高、还有薪资;不变的值我们用常量表示,变得值我们用变量来表示。
定义变量的方法
- 只能由字幕(包括大小写)、数字和下划线(_)组成
定义变量也要有意义,方便别人阅读,_2b这样的定义就显得很不好。 - 不能有数字开头
- 不能超过63个字符
- 变量名区分大小写
- 变量名不能使用关键字
就比如:int int就是非法的。
变量的分类
变量分为局部变量和全局变量举个例子就一目俩然
在这里插入代码片int num = 1000;//全局变量
int main()
{
int num = 10;//局部变量
//局部变量和全局变量名字冲突的情况下,局部优先
printf("%d\n", num);
return 0;
}
变量的作用域和生命周期
作用域
所谓的作用域个人理解,就是我们写程序时候定义的变量名字并不是总是有效的,就像数学里的定义域,他就在这个区间内才有作用,限定它作用的范围就是这个变量名字的作用域
- 局部变量的作用域是变量所在的局部范围
- 全局变量的作用域是整个工程
举个例子:
int count = 1000;//作用域就是整个工程
int main()
{
int num = 10;//作用域仅限于这个大括号内部
printf("%d\n", num);
return 0;
}
生命周期
我们都知道,我们定义一个变量,就要为其开辟空间,当进入作用域,这个空间就开辟成功,离开这个作用域,我们要释放这个空间,所以变量的生命周期指的就是变量创建到销毁释放的这个时间段。
- 局部变量的生命周期:进入作用域生命周期开始,离开作用域生命周期结束。
- 全局变量生命周期:整个程序它都一直开辟着。