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

seo网站制作怎样在网上做推广

seo网站制作,怎样在网上做推广,用asp.net做网站,西安seo主管编写不易,禁止搬运,仅供学习,感谢理解 问题现象 下面是一个在keil5里面写的一个,int类型的返回值函数,这个函数里面,只有if else if else这三个判断条件语句,正常来说任何情况下,…

                                        编写不易,禁止搬运,仅供学习,感谢理解

问题现象

        下面是一个在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.zhongyajixie.com/news/55358.html

相关文章:

  • 成都网站改版起飞页自助建站平台
  • 伴游网站开发百度推广一天烧多少钱
  • 网上做计算机一级的网站是营销计划书7个步骤
  • 网站专题页怎么做软文推广500字
  • 免费b站网页推广今天热点新闻
  • 网站做301将重定向到新域名网络服务运营商
  • 洛阳网站排名google搜索免费入口
  • 个人交互式网站备案百度大全免费下载
  • 网站的推广代码是什么广州十大营销策划公司
  • 做视频网站需要流媒体吗百度点击软件
  • 代做网站在哪找活站长统计网站
  • 论坛门户网站建设给我免费播放片高清在线观看
  • 属于门户网站的平台有长沙百度推广优化排名
  • 望牛墩镇仿做网站我想学做互联网怎么入手
  • php网站后台无法上传图片百度小说排行榜总榜
  • 什么网站能看到专业的做面包视频网络广告的特点
  • 昆明网站制作工具友情链接适用网站
  • 郑州做网站的大公司一份完整的营销策划书
  • 网站开发的完整流程公司网站设计需要多少钱
  • 手机做任务的网站有哪些app引导页模板html
  • 佛山三水区有没有网站建设公司seo快速收录快速排名
  • html5 响应式音乐网站万能推广app
  • 做网站什么主题好太原网站优化公司
  • 网站优化需要做什么如何在网上推广
  • 网站建设技巧武汉企业seo推广
  • 零基础学计算机难吗厦门seo
  • 卧龙区2015网站建设口碑北京seo百度推广
  • 怎么在vps上做网站程序员培训
  • 青木源网站建设公司如何将网站的关键词排名优化
  • 做外贸哪个网站比较好2017谷歌搜索引擎入口手机版