发新帖我要提问
123
返回列表
打印

还是时钟问题,把时钟程序分开成3个文件了

[复制链接]
楼主: 雷影少年
手机看帖
扫描二维码
随时随地手机跟帖
41
sedatefire| | 2012-7-13 15:11 | 只看该作者 回帖奖励 |倒序浏览
编程的艺术,艺无止境

使用特权

评论回复
42
sedatefire| | 2012-7-13 15:13 | 只看该作者
如此不断地要求自己,精益求精,养成习惯,如呼吸一样自然
这样做出来的软件系统才会是稳定、高效、分层清晰、容易维护、历久弥新....
这就是菜鸟与老鸟的区别

使用特权

评论回复
43
雷影少年|  楼主 | 2012-7-13 17:05 | 只看该作者
O(∩_∩)O谢谢斑竹
那个中断的精度真的不会,还需要斑竹点拨下
关于{}我现在是这么写的
void timer()
{
        if(++sec>59)
        {
                sec=0;
                if(++min>59)
                {
                        min=0;
                        if(++hour>23)        hour=0;
                }
        }
        get_clock(sec,min,hour);
}
如果if后面只跟一个句子的话我就直接把它们写到一行了,至于你说的隐性BUG,改程序的时候看到它们在一行就自然会注意了

使用特权

评论回复
44
sedatefire| | 2012-7-14 14:33 | 只看该作者
2. 我之所以写成下面这样,是为了程序的可读性,写59,23对于阅读者来讲,会愣几秒钟才反应过来你的意图。
if (++hour>=24)
或者
if (++min>=60)
sedatefire 发表于 2012-7-13 15:11

写59,23对于阅读者来讲,会愣几秒钟才反应过来你的意图。

使用特权

评论回复
45
雷影少年|  楼主 | 2012-7-14 15:31 | 只看该作者
可是程序会更简洁啊~
再说这个也并是不难以理解的东西,不给它较真

使用特权

评论回复
46
sedatefire| | 2012-7-22 14:09 | 只看该作者
可是程序会更简洁啊~
再说这个也并是不难以理解的东西,不给它较真
雷影少年 发表于 2012-7-14 15:31

程序的简洁,不在于字符数的少
而在于整体结构的简约、逻辑清晰、产生的总的汇编代码少、且执行效率高
如果简洁牺牲了可读性,那宁可不要

使用特权

评论回复
47
sedatefire| | 2012-7-22 14:12 | 只看该作者
你这个态度,让我有些小小失望
上士问道,勤而行之;中士问道,若存若亡;下士问道,大笑之。
不笑不足以为道。

大音希声,大道至简。
真理,往往都是引人嘲笑,不以为然的。

使用特权

评论回复
48
sedatefire| | 2012-7-22 14:12 | 只看该作者
写错了,是“闻道”

使用特权

评论回复
49
aihe| | 2012-7-22 15:44 | 只看该作者
这种技巧一般人嫌比较啰嗦的
一定要几夜不睡找BUG以后才能知道,一个简单的书写习惯,带来了严重后果
一般的人都是喜欢先撞南墙,然后才会回头的

使用特权

评论回复
50
雷影少年|  楼主 | 2012-7-22 19:40 | 只看该作者
:(我错了~

使用特权

评论回复
51
sedatefire| | 2012-7-23 15:20 | 只看该作者
这种技巧一般人嫌比较啰嗦的
一定要几夜不睡找BUG以后才能知道,一个简单的书写习惯,带来了严重后果
一般的人都是喜欢先撞南墙,然后才会回头的 ...
aihe 发表于 2012-7-22 15:44

只有经历破茧之痛,才能羽化成蝶
人生总是这样,充满无奈

使用特权

评论回复
52
雷影少年|  楼主 | 2012-7-23 20:32 | 只看该作者
没办法,有些东西没有经历就没有办法体会到,前人的经验毕竟不是自己的

使用特权

评论回复
53
wukunshan| | 2012-7-24 12:21 | 只看该作者
#include"display.c" //显示子程序
#include"time.c" //时钟更新子程序
楼主的这种写法谁教你的?不要养成这种不良习惯。模块化编程包含进来的是头文件而不是源文件。

使用特权

评论回复
54
雷影少年|  楼主 | 2012-7-24 17:46 | 只看该作者
已经改正了,原来不会定义头文件,现在学了一下
这是现在定义的
#include<reg51.h>
#include"typedef.h"                          
#include"key.h"                                //键盘分析模块
#include"display.h"                        //显示模块
#include"timer.h"                        //时间更新模块


O(∩_∩)O谢谢ls

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则