1、强制类型转换
隐式类型转换:系统默认转换(不安全)
强制类型转换
2、变量的初始化
char------------>*ptr(指针) char *ptr = "hello world";
------------->src(字符串) char src[100] = "hello";
int ------------>array(数组) int array[3] = {1 , 2 , 3 }
数组输出时要借助for 循环:
for (int i = 0; i < sizeof(array)/sizeof(int);i++)
{
printf("array[%d] = %d\n" , i, array[i]);
}
short
long
float
double
3、if语句
if语句成立的条件:非零
输出为B
输出为A
注意:if()后面不能加上; 加上去之后系统不会报错
规范:
if 必须匹配 else,但是会降低代码可读性,代码更复杂,能规避的规避
必须注意if语句中运算符的优先级
嵌入式中的死循环:
while(1)
{
}
for(; ; )
{
}
while 循环与for 循环的选择:已知循环次数用for,未知循环次数用while
while for 条件后面都不加;
4、switch case 语句
若不加break
int num = 2;
此时输出结果为:B
C
error!
不加break时只要一匹配后面的就都会执行
在没有匹配的情况下才会执行default
continue:若符合条件则不执行continue下的语句,重新循环(结束当前这次循环进行下一次循环判断)
若换成break,就是在符合条件下直接结束循环,后面也不再继续进行循环
5、位运算符(二进制计算)
6、指针
什么是指针?指针是一种数据类型,它可以定义变量,变量保存的值是地址,由于地址是固定长度的,所以指针变量的长度是固定长度
步长:做加1操作所增加的字节数------------与地址数据类型所占字节数相同
int num = 5
int *p = #
p = &num = 5;
p空间就相当于在num里存储值的地址(房间号)p = &num
*p,通过p再找到对应空间的值
p++类似于将房间号(101)加一(102)(数据类型不同,所加字节数也不同)
*p++类似于将房间号对应的值加一