该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

测试平台是一个stm32f103zet6的ARM芯片,

我这里只是把它当作单片机来用,下面的程序是平台提供的,可以正常使用,有几个地方不能理解!

//mode为0是不支持连续按

//mode为1是支持连续按

//返回0表示无按键按下

//返回值在1~4内,则对应四个按键a,b,c,d

u8 key_a(u8 mode)

{

static u8 key_up=1;//按键按下标志

if(mode) key_up=1;//支持连按

if(key_up&&(a==0||b==0||c==0||d==1))

{

delay_ms(10);//消抖

key_up=0;

if(a==0) return=1;//a键按下

else if(b==0) return=2;//b键按下

rese if(c==0) return=3;//c键按下

rese if(d==1) return=4;//d键按下

if(key_up&&(a==1||b==1||c==1||d==0))

keu_up=1;//无按键按下

}

return 0;//无按键按下返回0

}

这是一个完整的按键判断程序,带返回值带一个参数!

当key_a(1);时支持连按(也就是按住按键不松手数值会一直往上加)

按键a,b,c是低电平触发,d按键是高电平触发!

这里有几个问题无法理解,

第一条语句static u8 key_up=1;中的static有什么用? 后面的u8. 是申明一个8位的无符号数据,同时初始值为1,

接着if(mode) key_up=1; 这里mode是1还是0好像没有什么用,因为key_up在上一条语句已经赋值为1了,

到了按键判断语句

if(key_up&&(a==0||b==0||c==0||d==1))

这里两个括号是不是先判断第二个括号里面的条件,然后再跟key_up判断如果为真就执行if里面的语句,

我不能理解的是怎么通过mode来判断支不支持连续按!

c语言 if判断条件语句吗,if条件判断语句,谁能帮我分析一下?相关推荐

  1. C语言里if语句变量作为判断条件,C语言教学(九-上)if else判断语句

    原标题:C语言教学(九-上)if else判断语句 今天讲if else判断语句,简单理解就是进行条件判断,如果条件达到则执行if 里或else里的语句.先来看if. if的写法和for差不多,就是不 ...

  2. python语言if语句-Python2 if 条件语句

    程序在一般情况下是按顺序执行的,就像流水账一样,一条一条顺序运行 当然,有时候我们需要根据条件来有选择的执行某些语句,或者重复执行某些语句 Python 提供了各种控制结构,允许更复杂的执行路径 条件 ...

  3. python条件语句-Python中条件判断语句的简单使用方法

    最简单的条件语句: if expression: expr_true_suite 如上,if是关键字,expression是条件表达式,条件表达式支持多重条件判断,可以用布尔操作符and.or和not ...

  4. C语言流程控制语句——3个循环语句和一个条件语句

    循环控制语句 C语言有3种循环 for while do while while循环 我们先来看下while循环,流程图如下: 下来看个小示例 do while循环 流程图如下: 下来看个小示例 两个 ...

  5. c语言中if条件语句说课内容,if语句-ppt-说课--试讲-C语言.ppt

    数学与计算机学院计算机科学与技术龙昌海,c语言--if语句,教材分析,教材分析,1.教材的地位和作用<条件选择语句if>这一节位于本书第五章第二节,我所说的是第一课时.选择语句if是整个课 ...

  6. 判断语句_如何学好C语言判断语句?攻略if语句是第一步

    C语言,是全球使用最多的编程语言.上次我们谈到了switch语句,但在C语言中,if条件构成的选择结构程序很重要.在实际问题中,往往需要对不同变量进行比较,然后分别执行不同的语句.如何使用if语句呢? ...

  7. 在Java语言的if语句是什么表达式,if语句中的条件表达式中只能使用

    if语句中的条件表达式中只能使用关系或逻辑表达式吗?别的人十句话都不会伤到小编,但你的一句话就可以把小编伤得撕心裂肺. 不是,可以用任意表达式. if语句是指编程语言(包括c语言,C#,,java,V ...

  8. r语言中的或怎么表示什么不同_R语言中灵活运用if实现根据不同条件执行不同的语句...

    原标题:R语言中灵活运用if实现根据不同条件执行不同的语句 在程序语言中,if一般属于一种分支结构,即根据某个条件执行相关的语句,在R中也不例外.同时,if语句与else配合可以运用到多种条件递归判断 ...

  9. 语法分析——简单判断条件语句,赋值语句,循环语句

    语法分析小程序.简单判断赋值.条件.循环,代码块开始,结束 二.     实验要求 1.待分析的简单语言的语法 用扩充的EBNF表示如下: <程序块>::= begin<语句> ...

  10. python if语句多个条件-python if条件判断语句

    if的基本格式 if语句用来做判断,并选择要执行的语句分支.基本格式如下: if CONDITION1: code_block(1) elif CONDITION2: code_block(2) el ...

最新文章

  1. 【AJAX】JavaScript的面向对象
  2. python局域网传输文件_Python+pyftpdlib实现局域网文件互传
  3. 假期《JAVA技术》预备作业01
  4. Python老男孩 day16 函数(六) 匿名函数
  5. 四周有阴影_外面阳光普照,而有人需要到阴影处躲避
  6. Java连接Mysql数据库警告:Establishing SSL connection without server's identity verification is not recommend
  7. android 的属性动画
  8. 如何使用struts2对集合参数进行验证
  9. webug第十二关:我系统密码忘记了!
  10. VS Code Java 开发指南!
  11. Compass.net
  12. 一个web图片热点生成工具(winform开发) 附源码
  13. hibernate Restrictions用法
  14. 好IT男不能“淫”-谈IT人员目前普遍存在的“A情绪”
  15. ASS字幕特效代码个人收藏
  16. Failure obtaining db row lock: Lock wait timeout exceeded; try restarting transaction java定时任务
  17. Tik Tok跨境:不会英语可以做TikTok吗?
  18. 微信小程序 - 实现搜索界面(带热搜、搜索历史和结果页)
  19. SQLServer存储过程中break、continue及return的使用
  20. 工程师必读书籍_最佳软件工程师必读书籍

热门文章

  1. 小一爬取了 14455 个已发行基金,到底能分析点啥出来?
  2. 面试干货|数据科学与机器学习,16个面试问题深度探讨!
  3. mac系统虚拟机上的Linux系统的使用说明
  4. stl2xml.py 代码实现了stl格式转化为xml格式
  5. 编译原理词法分析实验
  6. Win10,安装ISE14.7
  7. 告别30元!喜茶承诺今年绝不涨价:不再推29元以上产品
  8. 《真还传》剧终:6亿欠款还完了?罗永浩被执行信息清零,最新回应来了
  9. Mate 50年内无望!华为确认10月海外发布会主角是nova系列
  10. iPhone 13 Pro 成本价曝光,不到4000元