5549|18

64

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

关于计数的C表达式怎么理解? [复制链接]

 代码如下:

Buffer_Counts[2]=Count_A/100;
   Buffer_Counts[1]=Count_A%100/10;
   Buffer_Counts[0]=Count_A%10;
   if(Buffer_Counts[2]==0)       //从这起,程序是想表达什么意思?为什么要先赋值0,再弄0x0a. 请各位高手不吝赐教。
    {
      Buffer_Counts[2]=0x0a;
   if(Buffer_Counts[1]==0)
    {
      Buffer_Counts[1]==0x0a;
    }
    }

此帖出自51单片机论坛

最新回复

欢迎多多交流  详情 回复 发表于 2011-6-1 09:02
点赞 关注
 

回复
举报

2804

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 
if(Buffer_Counts[2]==0)   这是比较 不是赋值。比较Buffer_Counts[2]是否等于0,看来基础有待提高。
此帖出自51单片机论坛
 
个人签名QQ:1625345502
 
 

回复

473

帖子

0

TA的资源

纯净的硅(高级)

板凳
 
if(Buffer_Counts[2]==0)  这里的意思是判断Buffer_Counts[2]是不是等于0,如果等于就执行Buffer_Counts[2]=0x0a;如果不等于就执行下面的语句,这程序是个判断百位和十位是否到0的程序
此帖出自51单片机论坛
 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

4
 
首先你要确认Count_A是啥意思,是个常量还是变量
你这个程序掐头去尾好像瞎子摸象,鬼知道啥意思
此帖出自51单片机论坛
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(中级)

5
 
if(Buffer_Counts[2]==0)      
    {
      Buffer_Counts[2]=0x0a;
   if(Buffer_Counts[1]==0)
    {
      Buffer_Counts[1]==0x0a;
    }
字面的==,=。无非是判断与赋值。 COUNT A,这是个数码管计数的程式节选。程序中是用来得出,百,十,个 三位。
   也许是我没表达清楚。俺是想知道写这个判断语句的用意在哪里。为什么用0x0a?
此帖出自51单片机论坛
 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

6
 
这个要从你程序前后结构来说,仅这几句是看不出什么意思的,就好像中文的“好”,你说啥意思?解释太多了,一本书都讲不完
此帖出自51单片机论坛
 
 
 

回复

8

帖子

0

TA的资源

一粒金砂(中级)

7
 
好好学学C语言的if表达式吧!!!
此帖出自51单片机论坛
 
 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

8
 

回复 5楼 yanse51 的帖子

我猜就是在把一个数字拆成逐位逐位的数组。

首先不管这个程序什么问题,首先说一句
这种写法很低级错误。
非常不通用,非常弱智(我不是骂人,但是这个程序实在让我发指,几个月内,我至少见过5次)
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

9
 

回复 楼主 yanse51 的帖子

为什么遇到0要加上一个0A?

这个,我猜测是转化成对应的ASCII码值,因为0的ASCII码值可能就是0A。

还有,程序里有一种结构叫循环,不用很浪费把一句代码能写完的东西分几次写,是一件非常不可原谅的事情。

 

据我个人以为,数组 是程序语言里一个非常好用的玩意,它实现了 下标  和 数值 的联动。(这是个人说法)。

由此你可以把一组很难找到线性等简单函数关系的数值按照顺序排列,由此,加上循环,可以实现很多让你惊喜的程序功能......

 

再说下去,你就知道为什么我说你的程序写得很恶劣了,留给你一个功课:

如果我有一个数字,我不知道它是几百,或者几千,甚至上万,但是我要求你写出一个子函数,要求输入一个数组,输入一个数字。

我要你把这个数字拆成个十百千万.....然后经由这个数组(按地址传递)返回给调用它的函数体。

 

-----------------------------------

这个东西你写出来了,你就不至于再写出

这样让人愤怒的程序了。

[ 本帖最后由 辛昕 于 2011-5-31 15:13 编辑 ]
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

10
 
if(Buffer_Counts[1]==0)
    {
      Buffer_Counts[1]==0x0a;
    }
    }

关于这句话,我就不说了。
WANGHONGYANG已经说了,,== 和 = 是两回事。
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

11
 

回复 5楼 yanse51 的帖子

请告诉我这个程序具体用于何处,实现的目的是什么
另外,我比较懒,也比较忙,懒得去查ASCII码,麻烦你告诉我,ASCII码里的0A是哪个符号。

有这些,我想,这里90%的人都能告诉你怎么回事
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

2771

帖子

0

TA的资源

裸片初长成(中级)

12
 
因为0的ASCII码值可能就是0A


真的吗???
此帖出自51单片机论坛
 
 
 

回复

2771

帖子

0

TA的资源

裸片初长成(中级)

13
 
看了楼上几个的回答,我不做声,哈哈.
此帖出自51单片机论坛
 
 
 

回复

7815

帖子

57

TA的资源

裸片初长成(中级)

14
 

回复 12楼 jxb01033016 的帖子

我记得不是,好像0X31?
我记性不太好,但是我想LZ看完ASCII码后会知道我在说什么......
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

2771

帖子

0

TA的资源

裸片初长成(中级)

15
 
0X30
此帖出自51单片机论坛
 
 
 

回复

2771

帖子

0

TA的资源

裸片初长成(中级)

16
 
1的ASCII码是0X31
此帖出自51单片机论坛
 
 
 

回复

2130

帖子

0

TA的资源

五彩晶圆(中级)

17
 
哎,jxb01033016 你就别深究了。这个家伙驴得很,经常不看手册就往前冲。
此帖出自51单片机论坛
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(中级)

18
 
多谢辛版主的详细点评。运用指针数组来解决问题,这个我很少使用。都是用些基础的表达式一类的。以后会尝试着用指针来解决问题。这个程序是书上的例程。菜鸟模仿的多一些。
0X0a这个我已经明白了。是回车字符。回车字符 0d,0a.
0d用不着写了。
多谢各位版主热情回复。
以后还会有弱智问题叨扰。大概这就是菜鸟的通病吧
此帖出自51单片机论坛
 
 
 

回复

2万

帖子

74

TA的资源

管理员

19
 

回复 18楼 yanse51 的帖子

欢迎多多交流
此帖出自51单片机论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
个人签名

加油!在电子行业默默贡献自己的力量!:)

 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表