STM32基于MDK的实战基础(一)C语言编程知识点

一、STM32编程的数据类型

表1-1 MDK的基本数据类型
数据类型关键字长度/B
字符型char1
短整型short int2
整形int4
长整型long int4
单精度浮点型float4
双精度浮点型double8

在MDK中,为了编程的方便,还定义了新的数据类型。

表1-2MDK新定义的新类型
原类型新定义的类型代表的含义
unsigned charuint8无符号的8位字符型
signed charint8有符号的8位字符型
unsigned shortuint16无符号的16位短整型
signed shortint16有符号的16位短整型
unsigned intuint32无符号32位整型
signed intint32有符号32位整型
floatfp32单精度浮点型(32位长度)
doublefp64双精度浮点型(64位长度)

STM32使用了大量的固件库,在固件库中有自己的数据类型定义。

表1-3 STM32库中的数据类型定义
类型符号长度
有符号整型s81
s162
s324
int64_t8
无符号整型u81
u162
u324
uint64_t8

1.转换规则

例:

(int)(a+b);//将(a+b)转换成int类型

这种叫强制类型转换,会得到一个所需要的中间变量,原来变量的类型未发生改变。

二、STM32编程中的C语言知识点

1.位操作

表2-1 位操作
运算符含义运算符含义
&按位与~取反
|按位或<<左移
^按位异或>>右移

2.define宏定义

define是C语言中的预处理命令,用于宏定义可以提高代码的可读性并且方便编程者对代码的修改,宏定义的格式如下:

#define 标志符  字符串

标识符为所定义的宏名,字符串可以为常数、表达式 格式串;

例:

#define Elayfolk 500

这个表达的是将Elayfolk的值定义为500;

3.ifdef条件编译

在满足某条件时对一组语句进行编译,当条件不满足时编译另一组语句

# ifdef
程序1
# else
程序2
# endif

4.外部声明

C语言中extern可以置于变量或者函数之前,以表示变量或者函数的定义在其他文件中;在同一个工程中,如果想使用的变量在另外一个文件中,可以用exrern声明将该变量引用;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值