1.1变量的命名规则:
C语言规定,标识符可以是字母(A~Z,a~z)、数字(0~9)、下划线_组成的字符串,并且第一个字符必须是字母或下划线。具体规则如下:
1、只能由数字、字母、下划线组成
2、不能以数字开头
3、不能使用c语言的关键字
4、好的命名习惯要做到见名知义,如下:
(1)大驼峰命名法 每个单词首字母大写 例如:MyFirstName
(2) 小驼峰命名法 从第二个单词开始,首字母大写 例如:myFirstName
(3)下划线命名法 每个单词之间用_连接 例如:my_first_name
1.2 变量的声明与定义的区别(面试题):
1、定义变量是创建了变量并为其分配内存,声明没有分配内存
2、一个变量在一定的区域内只能被定义一次,声明可以有很多次
变量声明的本质:声明就是告诉编译器,这个变量已经在别的地方定义过了,这个只做基本的声明,并没有为其分配内存。
关键字学习记录
1 定义变量的数据类型:
char是有符号的字符型,int是有符号的整型;unsigned char和unsigned int是无符号的
浮点型,也就是小数是用float单精度型 和 double双精度型
2 数据类型关键字 (12个)
char(字符型) , short(短整型) ,int(整型) ,long(长整型) , float(浮点型), double(浮点型,变量精度更高),
unsigned(无符号数), signed(有符号数), struct(结构体), union(联合体又叫共用体), enmu(枚举),
void(空类型)--特殊不能定义变量,修饰函数的参数或返回值,表示没有
3 控制语句关键字 (12个)
if , else , switch , case , default
for ,do, while ,break, continue, goto, return
关于continue,break,和return的区别:
1.return有两个作用,返回结果和结束函数,。用在循环里,一旦在循环体内执行到一个return语句,return直接结束代码,循环自然也随之结束。
2.break 语句用于完全终止最近的循环(如for、while、do-while循环)或switch语句。当遇到break时,程序将跳出循环或switch语句,并继续执行循环或switch之后的代码。
3.continue的功能和break有点类似,区别是continue只是中止本次循环,接着开始下一次循环。而break则是完全中止循环。
4 存储类关键字(5个)
auto(以后一般不用) , extern(外部的), register(寄存器), static, const
-
register是寄存器的意思,用register修饰的变量是寄存器变量
即:在编译的时候告诉编译器这个变量是寄存器变量,尽量将其存储空间分配在寄存器中。
注意:
(1)定义的变量不一定真的存放在寄存器中。
(2)cpu取数据的时候去寄存器中拿数据比去内存中拿数据要快。
(3)因为寄存器比效宝贵,所能不能定义寄存器数组。
extern修饰的变量是全局变量
extern主要用于声明外部变量或函数,当我们将一个变量或函数声明为extern时,那么就表示该变量或函数是在其他地方定义的,我们只是在当前文件中引用它。
5 其它关键字(3个)
sizeof , typedef ,volatile
sizeof是一个运算符,并不是函数,它是用来计算所占内存空间的大小,单位是字节,sizeof()作用:返回对象在计算机内存中所占的字节数,返回64位(8bytes)无符号整型 ,所以占位符使用%lld 代开long long int (8bytes)
volatile关键字可以告诉编译器不要对这个变量进行优化,确保每次访问时都直接从内存中读取其值