1:底层软件:windows/Linux操作系统;电脑硬件;
2:上层软件:VS/微信
3:C语言的出现:二进制→助记符(汇编语言)→B语言→C语言
4:头文件:1.h;源文件1.c
5:main()函数是C语言程序的入口,且有且仅有一个。
6:数据类型:char/short/int/long/long long/float/double等
它们存在的意义:int有4个字节,即32个bit,可存放无符号整型:0~2^32-1这么多数字,那如果用int去存放类似于年龄这样的有限且很小的整型数字,用int开辟内存显得有点浪费,由此可以使用short(2个字节)。其他有着类似的道理。
7:变量:值可能会发生变化;常量:值不会发生变化
8:变量的定义:如:int age =10;int为age的数据类型,并在内存在开辟4个字节空间。
变量的分类:(a)局部变量:在代码块起作用的变量;(b)全局变量:不被代码块限制的变量
且全局变量和局部变量同名时,优先级为局部变量。
9:在VS2019中不能安全使用scanf等库函数的原因:scanf不会考虑存储空间的溢出问题,它是用户输入多少,它就接受多少,所以不安全。
如何去解决?:
在newc++file.cpp文件设置:#define _CRT_SECURE-NO-WARNINGS 1
可解决警告问题。
10:
之所以scanf中arr前没有&,是因为数组名本身就是一个地址,但变量就是变量,在scanf中必须有&.
11:作用域:(a)局部变量:其所在代码块(b):整个工程
12:生命周期(从创建到销毁):(a)局部变量: 从进入局部范围开始,到离开局部范围结束为一个生命周期.(b)全局变量:整个程序的生命周期,或者说main()函数的生命周期
13:常量:(a)字面常量(注意有一个较字符串常量的常量)(b)const修饰的常变量,它是一个变量,但值不会发生变化也即有了常属性,VS2019不支持变长数组(数组指定个数时不可使用变量),否则报错。(c)#definex修饰的标识符常量(相当于全局变量)如:#define MAX 100,MAX在之后的程序里就是100;它不可再重新被赋值。(d)枚举常量:关键字enum,末尾别忘了封号。
14:字符串:由双引号引起来的一串字符为字符串字面值(数据类型中不包含字符串类型),字符串结束标志:\0,不做字符串长度。字符串可存放于字符数组中。
15:转义字符(要熟悉几个常见的)
16:注释
17:选择语句
18:循环语句
19:函数
20:数组