当前位置: 首页 > news >正文

网站模板html5高校后勤网站建设

网站模板html5,高校后勤网站建设,网站推广 软件,大学生免费服务器编写不易#xff0c;禁止搬运#xff0c;仅供学习#xff0c;感谢理解 问题现象 下面是一个在keil5里面写的一个#xff0c;int类型的返回值函数#xff0c;这个函数里面#xff0c;只有if else if else这三个判断条件语句#xff0c;正常来说任何情况下#xff0c;…                                        编写不易禁止搬运仅供学习感谢理解 问题现象 下面是一个在keil5里面写的一个int类型的返回值函数这个函数里面只有if  else if  else这三个判断条件语句正常来说任何情况下函数执行只会执行函数中的其中一个的判断语句条件不论执行的是哪一个判断语句条件这个时候都会有函数返回值函数如下。 int Scanf_Bit_IO_Function(void) {GLED_Open();if(!LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_2)!LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_1)){GLED_Close();YLED_Open();LL_mDelay(200);Beer_Start();if(LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_2)||LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_1)){//这个时候短接过后有不断接了停掉黄灯YLED_Close();return 0;//执行到return 就会结束函数当前调用因为在while里面就会再次进行调用}}else if(!LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_3)!LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_6)){GLED_Close();YLED_Open();LL_mDelay(200);Beer_Start();if(LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_2)||LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_1)){ //这个时候短接过后有不断接了停掉黄灯YLED_Close();return 0;//执行到return 就会结束函数当前调用因为在while里面就会再次进行调用 }}else{return 1;//这个时候代表没有检测到下拉}} 当时在实际编译的过程中keil5编译器是有一条warning的虽然warning不影响烧录程序当时为了弄明白是怎么回事就开始研究了。 ..\driver\gpio.c(168): warning: #940-D: missing return statement at end of non-void function Scanf_Bit_IO_Function } ..\driver\gpio.c: 1 warning, 0 errors 这里的话这个警告提示我们这个函数少了一个返回值当时按照函数逻辑来讲函数在任何情况下是不会少返回值的。 问题本质理解 这个时候需要占在keil5编译器的角度去理解问题keil5在检查代码的时候通常只进行静态分析不会运行代码他不会尝试所有可以运行的代码路径在代码里面虽然if-else if-else包含了所有的可能行但是编译器不能推断。 在keil5编译器的角度里面当if else if的条件为false的时候同时跳出else这种情况虽然我们知道这种情况是不可能发生的。 但是编译器不这么认为他认为如果发生这种情况仍然会返回位置的数值。 如何解决问题 上面已经描述了出现问题的情况所以这里只需要把编译器认为会出现没有返回值的情况在加上return 1 就可以了。 int Scanf_Bit_IO_Function(void) {GLED_Open();if(!LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_2)!LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_1)){GLED_Close();YLED_Open();LL_mDelay(200);Beer_Start();if(LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_2)||LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_1)){//这个时候短接过后有不断接了停掉黄灯YLED_Close();return 0;//执行到return 就会结束函数当前调用因为在while里面就会再次进行调用}}else if(!LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_3)!LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_6)){GLED_Close();YLED_Open();LL_mDelay(200);Beer_Start();if(LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_2)||LL_GPIO_IsInputPinSet(Scanf_Port, Set_Pin_1)){ //这个时候短接过后有不断接了停掉黄灯YLED_Close();return 0;//执行到return 就会结束函数当前调用因为在while里面就会再次进行调用 }}else{return 1;//这个时候代表没有检测到下拉}return 1;//加上return 让编译器不会报错 } 欢迎指正希望对你有所帮助
http://www.dnsts.com.cn/news/142731.html

相关文章:

  • 网站的导航栏360推广登陆入口
  • 网站备案号怎么放友汇网站建设一般多少钱
  • php音乐外链网站源码网站建设岗位的认知
  • 东莞seo技术培训seo教程自学入门教材
  • 抚顺网站设计wordpress 内容发布
  • 用asp做的网站运行完之后怎么生成一个可以打开的网站图标怎样向顾客电销网站建设
  • 网站建设推广的软文加国无忧51工作网
  • 网站备案背景幕布尺寸微商怎么开店步骤
  • 东莞网站建设员如何做网站 站长教课
  • 海网站建设生产厂家哪家好新零售分销系统开发
  • 徐州网站建设优化宣传合肥网站建设网页设计
  • 吉林省建设工程质量监督站网站免费下载建网站教程
  • 简单网页模板代码c盘优化大师
  • 做网站的服务商网站开发维护人员
  • 针对网站开发软件 代替手动电商网站建设过程
  • 移动无线宽带怎么续费北京优化公司排行
  • 嵌入式和网站开发python做的网站如何打开
  • 网站域名价格 优帮云网站视频外链怎么做
  • 网页设计与网站建设在线作业答案系部网站开发计划
  • wordpress 游戏主题下载深圳优化公司公认安高粱seo
  • gta5卖公司显示网站正在建设中郑州做网站优化电话
  • 花都网站建设价格做网站的市场有那么大吗
  • 不能上传图片到网站希音跨境电商官网
  • 网站图片上传不上去怎么办黄岛区做网站多少钱
  • 干网站建设销售怎么样河北石家庄网络公司
  • 企业网站建设报价明细表百度seo关键词优化排名
  • 网站哪些页面会做静态化西安软件公司排名
  • 营销型网站建设特点nas服务器可以做网站吗
  • 免费网站制作器一流的内蒙古网站建设
  • 什么nas可以做网站服务器wordpress弱点