算法笔记 心得2
1、转义字符
\n 代表换行
\0 代表空字符NULL,其ASCII码为0
2、强制类型转换
(新类型名)变量
一个类型赋值给另一个类型,却没有写强制类型转换,编译器会自动进行转换。
如果在计算过程中,需要转换类型,就必须要写强制类型转换,因为不写的话,就是算完才赋值。
3、符号常量(替换/宏定义/宏替换)
格式:#define 标识符 常量
eg.#define pi 3.14
格式:const 数据类型 变量名 =常量;
一旦确定其值后,就无法改变。eg. pi=pi+1 就是错误写法
define除了可以定义常量外,还可以定义语句或片段
eg. #define ADD(a,b) ((a)+(b))
宏定义的陷阱:它会把替换的部分原封不动的替换进去
eg.#define CAL(a) (a*2+1)
int num=1;
printf(“%d\n”,CAL(num+1));
结果为4
实际执行为:(1+1*2+1)
尽量不要使用宏定义来做定义常量之外的事
4、自增运算符
++i 先将i加一,再使用i
i++ 先使用i,再将i加一
5、三种逻辑运算符
&& 与 a&&b ab都真,则返回真,其余全返回假
|| 或 a||b ab都假,则返回假,其余全返回真
! 非 !a a为真,返回假;a为假,返回真