前言:我们都知道单片机要对其写指令、编程等就需要一种编程语言。在众多的编程语言中不可否认的是c语言是最适合成为单片机的编程语言的。我们在这里分享一下c语言的知识点。
结构
一般来说c语言的结构,一般都是包括若干个头文件(以#include" xxx ")和函数组合而成的。例:
#include "stdio.h"
int main(void)
{
printf("hello wold");
return 0;
}
在这里我们看到有两部分#include "stdio.h"
、int main(void)
。
#include <stdio.h>
就是一条预处理命令, 它的作用是通知C语言编译系统在对C程序进行正式编译之前需做一些预处理工作。
int main(void)
则是函数,并且是主函数在一个C语言中只有一个主函数,即main函数。C语言主要就是执行main函数里面的内容,并且我们看到main函数下有一对花括号“{}”,花括号里面就是函数要编写的主要内容。另外我们发现在每一句结尾的时候都要加上一个分号“;”。这个分号主要就是结束这个语句的意思。如果不加这个分号的话编译器就会报错。因此,分号是必须在语句结束的时候在结尾加上。
注释
当语句过长的时候,可读性不是很高的时候。这个时候注释就起到了很大的作用。他可以让我们的可读性增高很多。并且我们知道注释是给程序员看的,不是给电脑读的。在c语言中主要有两种的注释方法。即
/* 多行注释*/
//单行注释
例如:
#include "stdio.h"
int main(void)
{
// printf("hello wold");
return 0; //注释...........
}
在printf前面加上了// ,即单行注释,注释的这一行电脑就不会读取printf了。
多行注释也是一样的情况的。
变量定义与赋值
变量就是可以变化的量,而每个变量都会有一个名字。变量占据内存中一定的存储单元。使用变量之前必须先定义变量,要区分变量名和变量值是两个不同的概念。变量名,即为变量的名称;变量值,即为赋值给变量的值。
例:
int a=10; //定义int型变量,变量名为a赋值10
int b;
b=10;
值得注意的是在定义中不允许连续赋值,连续的赋值是不合法的。例:
int a=b=c=5; //不合法的赋值操作
变量的赋值分为两种方式:
①先声明再赋值
②声明的同时赋值
数据类型
在c语言中数据类型有很多,整形、字符型、浮点型。
① 整型数据是指不带小数的数字(int,short int,long int, unsigned int, unsigned short int,unsigned long int)
,在这些整形数据,他们的区别也就是字节和取值的范围不同。
在单片机编程中常用的是unsigned int、unsigned long
。这两种形式。
②字符型是指不是数字是字符。即:a、b、c、d
等等,在字符型中主要就是char
。
单片机中最经常用的数据也就是unsigned char
,因为它所占的数据资源最小,因此它使用的最频繁。
③浮点数据是指带小数的数字。和整形数据差不多按照小数的精度可以分为(float,double,long double)
。一般来说float已经是够用的了。
强制转换
在单片机中有时候要传输的数据不相同的时候。这个时候就需要我们进行强制类型转换。强制类型转换是通过定义类型转换运算来实现的。其一般形式为:
(数据类型) (表达式)
其作用是把表达式的运算结果强制转换成类型说明符所表示的类型。
即:
int a=10;
float b=0.5;
printf("%f\n",(float)(a*b));