STM32C语言基础

STM32基础C语言复习

一.stdint.h简介

stdint.h 是从 C99 中引进的一个标准 C 库的文件

路径:C:\MDK5.34\ARM\ARMCC\include

二.位操作

运算符

含义

运算符

含义

&

按位与

~

按位取反

|

按位或

<<

左移

^

按位异或

>>

右移

0 & 0 = 0  1 & 0 = 0  0 & 1 = 0  1 & 1 = 1

0 | 0 = 0  1 | 0 = 1  0 | 1 = 1  1 | 1 = 1

0 ^ 0 = 0  1 ^ 0 = 1  0 ^ 1 = 1  1 ^ 1 = 0

~ 11100100 = 00011011 11100100 << 2 =10010000 11100100 >> 2 =00111001

前面的是第六位为0,后面的是第六位为1

三.宏定义

四.条件编译

让编译器只对满足条件的代码进行编译,不满足条件的不参与编译!

指令

作用

#if

编译预处理条件指令,类似if

#ifdef

判断某个宏是否已被定义

#ifndef

判断某个宏是否未被定义

#elif

若前面的条件不满足,则判定新的条件,类似else if

#else

若前面的条件不满足,则执行后面的语句,类似else

#endif

#if,#ifdef,#ifndef的结束标志

五.extern声明

放在函数/变量前,表示此函数/变量在其他文件定义,以便本文件引用

extern uint16_t g_usart_rx_sta;

extern void delay_us(uint32_t nus);

六.类型别名(typedef)

为现有数据类型创建一个新的名字,或称为类型别名,用来简化变量的定义

typedef 现有类型 新名字

typedef unsigned char uint8_t;

typedef unsigned short int uint16_t;

typedef unsigned int uint32_t;

typedef struct{

IO uint32_t CRL;

IO uint32_t CRH;

…}

GPIO_TypeDef;GPIO_TypeDef gpiox

七.结构体

struct 结构体名{

成员列表;

} 变量名列表(可选);

struct student{

char name; / 姓名

int num; / 学号

int age; / 年龄 /

char group; / 所在学习小组

float score; / 成绩 /

}stu1, stu2;

八.指针

指针就是内存的地址

指针变量是保存了指针的变量

类型名 * 指针变量名

char * p_str = “This is a test!”;

*p_str:取p_str 变量的值

&p_str:取p_str变量本身的地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值