独闷闷网

 找回密码
 立即注册
搜索

鸿哥,理解不了了,帮忙解释一下吧

查看数: 3799 | 评论数: 3 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2014-11-15 21:22

正文摘要:

本帖最后由 waphaoyun 于 2014-11-16 11:24 编辑 这里为什么用了else?   还有 uiCodeYu=uiCodeCnt%2; //对2求余数,用来识别相信的2个是否是机内码,否则要进行插入填充0x20处理 这里相邻的两个是 ...

回复

jianhong_wu 发表于 2014-11-16 12:45:30
waphaoyun 发表于 2014-11-16 11:25
谢谢鸿哥,第八十二讲的,昨天忘记上图了,还是没明白else呢

应该是第81节的内容。
  1. if(ucRcregBuf[uiRcMoveIndex+3+i]==0x0d&&ucRcregBuf[uiRcMoveIndex+4+i]==0x0a)  //结束标志0x0d 0x0a的判断
  2.                       {
  3.                            uiVoiceCnt=const_voice_short; //蜂鸣器发出声音,表示数据接收正确完毕
  4.                                                    ucWd1Part1Update=1; //及时更新显示第2,3,4行内容的信息
  5.                                                    break; //退出for循环
  6.                       }        
  7.                                        else  //收集有效信息编码进入显示缓冲区
复制代码
在for循环里,数组下标随着i的变化而不断的从第1个字节往最后一个字节方向移动,移动的目的是搜索“0x0d 0x0a”这个结束标志,如果发现不是这个标志,那么执行else的代码,表示else部分收集到的数据是有效的信息数据。如果一旦搜索到0x0d 0x0a这个关键字代码,那么就表示这一条信息结束,通过 break; 退出for循环。
waphaoyun 发表于 2014-11-16 11:25:16
本帖最后由 waphaoyun 于 2014-11-16 11:27 编辑
jianhong_wu 发表于 2014-11-15 23:32
(1)为什么用else,你说的是哪节的内容?
(2)这个不是除以2,是对2求余数。对2求余数,只有两种结果, ...

谢谢鸿哥,第八十二讲的,昨天忘记上图了,还是没明白else呢
jianhong_wu 发表于 2014-11-15 23:32:23
本帖最后由 jianhong_wu 于 2014-11-15 23:33 编辑

(1)为什么用else,你说的是哪节的内容?
(2)这个不是除以2,是对2求余数。对2求余数,只有两种结果,一种是0,一种是1。也就是求奇偶数。而液晶屏一个地址必须显示1一个汉字,或者2个字符。如果一个地址只显示1个字符,那么另外1字符必须填充空格0x20字符。对2求余数就是目的判断它到底是一个地址刚好有2个字符,还是只有1个字符。剩下的要靠你自己感悟,理科的东西不能完全用语言描述清楚,需要靠个人用心感悟它。

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2024-5-3 06:50 , Processed in 0.152925 second(s), 21 queries .

快速回复 返回顶部 返回列表