1.C语言中的常量分为:
(1)字面常量:不变量
(2)const修饰的常变量:变量前加const会使变量具有常量的一定属性(值不可变)但又不等于常量。
(3)#define定义的标识符常量:例如
#define M 10000
printf(”%d",M);的输出结果为10000
(4)枚举常量:相当于已经给定的几个数据。枚举类型的变量只能从这几个数据里选择输出,输出的结果默认从0开始+1递增。(想要改变输出值只能改变枚举常量的初值,其他输出结果+1递增)
2.字符
字符打印--%c 字符串打印--%s
字符串打印以\0(不显示)结束
例如:char arr1[]={"abc"};
char arr2[]={'a','b','c'};
printf("%s\n",arr1);
printf("%s\n",arr2);
输出结果为:
abc
abcuisfbieb(乱码)
因为arr1默认自带\0(不显示);arr2没有\0,计算机读到\0才停止。
求字符串的长度:(1)加上头文件#include <string.h> (2)strlen()
例如:char arr1[]={"abc"};
char arr2[]={'a','b','c'};
printf("%d\n",strlen(arr1));
printd\n",strlen(arr2));
输出结果为
3
12(随机值,因为不知道什么时候识别到\0)
注意:虽然\0算是数组里的一个元素,但是计算字符串长度时不算。
3.变量的作用域和生命周期
(1)作用域:通常来说,一段程序代码中所用到的名字不总是有效、可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域。
注意:局部变量的作用域是变量所在的局部范围;
全局变量的作用域是整个工程。
(2)生命周期:变量创建到销毁的一个时间段。
注意:当局部变量和全局变量名字相同的情况下,局部优先。
4.转义字符
转义字符是一种以“\”开头的字符。例如退格符用'\b'表示,换行符用'\n'表示。转义字符中的'\'表示它后面的字符已失去它原来的含义,转变成另外的特定含义。反斜杠与其后面的字符一起构成一个特定的字符。(想让其表达原来的含义需在转义字符前加"\")
总结:今日总学习时长6小时,学的知识很多,需要记的也很多,目前来说学习得还算比较轻松,更加清晰地认识到,理解内存布局对知识理解和记忆有很大的帮助。