转义字符:
在大多数情况下,转义字符在内存中占用一个字符的空间。\t是水平制表符,\n是换行,\ddd表示一个八进制转义序列,这个转义序列会被解释为对应的八进制ASCII码所表示的字符,\xdd表示一个十六进制转义序列,这个转义序列会被解释为对应的十六进制ASCII码所表示的字符。
操作符:
1.除号两端只要有一个浮点数,执行的就是浮点数的除法。2.取模操作符的两端只能是整数。
sizeof是单目操作符,计算单位是字节。
(类型),是强制类型转换。
三目操作符,1 > 0 ? a : b为真输出a,为假输出b。
逗号表达式就是逗号隔开的一串表达式,其计算结果为最后一个表达式。
下标引用操作符。arr[3]中的[ ]就是下标引用操作符,arr和3就是[ ]的操作数。
关键字:
关键字是C语言内置的,不能自己创建。变量的名字不能是关键字,名字必须是数字、字母、下划线组成,且不能以数字开头,不能含有特殊字符。
1.typedef
2.static用来修饰变量和函数。当static修饰局部变量a时,例如:static int a = 0,a出作用域不会再被销毁,a的值将被保留下来。本质上,static修饰局部变量的时候改变了变量的存储位置,影响了变量的生命周期。全局变量是具有外部链接属性的,static修饰全局变量的时候,这个全局变量的外部链接属性会变成内部连接属性。同理,一个函数本来是具有外部链接属性的,被static修饰后会变成内部连接属性。其他 .c 文件就无法使用了。
指针:
*p是p指向的对象,*是解引用操作符,意思是通过p中存放的地址,找到p所指向的对象。
指针变量的大小取决于一个地址存放的时候需要多大的空间,在32位机器上的大小4个字节,在64位机器上的大小就是8个字节。