嵌入式软件--C语言复习阶段(一)

为了测试自己学习的水准,开始C语言的考试,于是开始复习。

一、基础部分

1.C语言之父--丹尼斯·里奇。他的好友肯·汤普森一起在贝尔实验室。

2.目前所学的版本是C99,51单片机用的是C89。语法差不多,有一点区别。

3.C语言编译流程,.c文件预处理成为.i文件编译成为.s文件,汇编成为.obj文件链接成为.exe文件,执行.exe文件。

五步:预处理、编译、汇编、链接、执行

4.主函数是程序最先运行的函数,只能有一个。int main( ){ return 0;//表示程序结束了}

5.常用函数:printf输出,scanf输入

6.格式占位符 %d整数,%f小数,%lf(double类型输入的时必须用的),%c字符,%s字符串,%zu获取字节

7.变量,相当于一个容器,可以存储数据。相同类型可多次赋值。先声明后赋值再使用。

8.常量,字面量常量123,234,235,'a';标识符常量#define PI 3.14  ,const。

9.进制的转换。在C99当中,可以有二进制、十进制、八进制、十六进制。int num=0b1101,num1=0x3a,

(1)二进制与十六进制的转换。

二进制转十六进制,每四位一组化为十进制,可得十六进制。

(2)十六进制转二进制,也是如此。

0x3a转换二进制:0b11 1010

10.整数的原码、反码、补码一样,三码合一。负数的反码除了符号位按位取反,补码是反码+1.

11.数据类型。

整型 int(signed int)、 long(signed long %ld)、 longlong(signed longlong  %lld)、short(signed short 格式占位符%hd)

无符号整型 unsigned int(%u)  unsigned long(%lu)、unsigned long long (%llu) 、unsigned short(%hu)

格式占位符 %d(整数)

默认都是有符号的。

long long num=12LL,需要有后缀long num1=23L;   unsigned long long num3=233ULL。

浮点型 单精度float 双精度double、 long double       小数的自变量默认double型。

long double %Lf

输入当中scanf( )格式占位符只能是%lf.

字符型  char %c

12. sizeof()计算类型、变量、自变量、表达式所占内存大小字节byte

13.强制转换  double a=12.34; int result=(int)a;

14.运算符。

数学运算符 + - * / % ++ --

比较运算符 ==  >=  <=  >  <  !=

逻辑运算符 && || !

位运算符 :按位与&、按位或 |、按位异或^(相同0,不同1)、按位取反~、按位左移<<、按位右移>>

赋值运算:= += /= %= ^= <<= >>= &= |= *=

三元运算符  x>y?x:y;

15.条件判断语句,单分支if else,多分支if( ) else if( ) else{ },switch语句

循环语句while,do while ,for

while(1)死循环。

16.作用域scope,声明函数内的变量赋值不能和主函数共用。

17.break可以和switch、 循环语句使用。

continue和循环语句一起使用,结束本次循环,继续下次循环

goto跳转语句

二、高级部分

1.数组。数组相当于容器,可以承载相同类型的元素,在内存当中紧密排列。

char[4]={'a','b','c','\0'};

2.在C语言中是没有数组类型的,要想传递数组,需要用到指针。

3.数组长度就是元素的个数,等于sizeof(arr[ ])/sizeof(int).

4.二位数组的长度:arr[3][4] 三行四列的二维数组   

第一维度的长度 rows=sizeof(arr)/sizeof(arr[0])

第二维度的长度 cols=sizeof(arr[0])/sizeof(int)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值