早教吧 育儿知识 作业答案 考试题库 百科 知识分享

staticIOuint32tTimingDelay;IO是什么意思?inlinevoidwrcmd(unsignedcharc)中的inline呢?

题目详情
static __IO uint32_t TimingDelay; _IO是什么意思?
__inline void wr_cmd (unsigned char c) 中的_inline呢?
▼优质解答
答案和解析
__IO 一般宏定义为volatile,表示可读可写
volatile 就是为了禁止编译器对其优化,因为对于timingdelay来说 你要设置一个初始值 但是变化是在中断中进行的 编译器不知道 会吧这个变量优化掉,
inline表示内联函数,有点类似c中的宏定义,但是是在c++中使用,主要是针对函数使用的,也是替换但是他替换的是一个真的函数,但是又不同于调用 因为他不需要压栈 他是把整个代码移到目标区域