0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

缩进就有那么重要?

单片机技术宅 来源:单片机技术宅 2020-05-14 15:03 次阅读

为什么要缩进

作为单片机编程爱好者,特别是初学者,才开始学习编程,也是良好编程习惯养成的最佳时间,为了日后我们写出的代码看着比较高大上,我们有必要在开始时形成好习惯,比如代码的缩进。

你猜的没错,今天我们就来说说缩进。缩进是代码阅读性的重要保证。没有缩进的代码如同没有标点符号和分段的文章,即使内容精彩绝伦,也不可能会有人喜欢去阅读,更主要的是,没有标点的文章,阅读起来好多地方是会有歧义的,我们的编程也是一样的,没有缩进的代码,我们是很难阅读,很难看出程序的逻辑关系,阅读起来还很有可能会产生歧义。

我们写出来的代码不只是写给处理器运行的,还需要同行、经理审查、阅读以完成协作,更重要的是在日后代码维护中,你才是主角。再或者不要你维护,今天你写的代码都么牛X,日后吹牛的时候,和菜鸟说的天花乱坠,菜鸟一看到代码,没有缩进,啊!

说了那么多,也许你还是不行,缩进就有那么重要?

往下看

试着读一下下面的代码,能否快速找到Delay_xms(1000);在哪里调用的?for?while?main?如果上千行的代码,没有缩进,你想像一下,会是什么场景?

void main(void)

{

uchar i,j;

Delay_xms(50);

Init_MAX7219();

while(1)

{

for(i=1;i<9;i++)

Write_Max7219(i,disp1[1][i-1],i,disp1[0][i-1]);

for(i=1;i<9;i++)

{

Write_Max7219(i,disp1[1][i-1],i,disp1[0][i-1]);

Max7219_pinCS=0;

for(j=0;j

{

Write_Max7219_byte(i); //写入地址,即数码管编号

Write_Max7219_byte(disp1[count-1-j][i-1]); //写入数据,即数码管显示数字

_nop_();

}

Max7219_pinCS=1;

}

Delay_xms(1000);

}

}

再看看下面的代码,试着找找Delay_xms(1000);在哪被调用?

void main(void)

{

uchar i,j; Delay_xms(50); Init_MAX7219(); while(1) {

// for(i=1;i<9;i++)

/ / Write_Max7219(i,disp1[1][i-1],i,disp1[0][i-1]);

for(i=1;i<9;i++)

{

// Write_Max7219(i,disp1[1][i-1],i,disp1[0][i-1]);

Max7219_pinCS=0;

for(j=0;j

{

Write_Max7219_byte(i); //写入地址,即数码管编号

Write_Max7219_byte(disp1[count-1-j][i-1]); //写入数据,即数码管显示数字

_nop_();

}

Max7219_pinCS=1;

}

Delay_xms(1000);

}

}

很明显的,在while里调用。上面的例子已经很明显了,缩进是代码可读性的前提。

如何快速实现缩进

绝招一:tab键,将光标定义在需要缩进的代码行或者选择需要缩进的所有代码,再按下tal键可以快速的实现所以光标行或者选择的代码。

绝招二:工具栏快捷按钮,缩进/取消缩进所选代码,用于缩进整块代码。

绝招三:编写代码时,换行后直接按tab把光标移到想要的位置,再进行代码的书写。

写在最后

缩进,让你的代码更优雅,看起来专业,便于阅读。陋习的养成很简单,也许只是一个简单程序的事,从开始就养成好的编程习惯,你将会受用一生。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程
    +关注

    关注

    88

    文章

    3614

    浏览量

    93686
  • 代码
    +关注

    关注

    30

    文章

    4779

    浏览量

    68526

原文标题:论编程缩进的重要性

文章出处:【微信号:chuxue_MCU,微信公众号:单片机技术宅】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ADS58C48的输出给FPGA的时钟怎样产生的,是只要有输入时钟,就有输出时钟吗?

    : 1,ADS58C48如果想要实现基本的功能需要怎样配置寄存器?有没有相关FPGA配置程序可以参考一下? 2,ADS58C48的输出给FPGA的时钟怎样产生的,是只要有输入时钟,就有输出时钟吗?
    发表于 12-20 06:32

    运放一上电,输出端就有+18V电压输出,然后缓慢将为0

    运放一上电,输出端就有+18V电压输出,然后缓慢将为0,请问这是怎么回事?怎么让运放一上电输出就为0?
    发表于 12-07 16:39

    CDCLV2104在未上电前输入管脚就有时钟输入,是否存在问题?

    应用如下图,CDCD62005先上电并配置完成时钟有输出后5S,CDCLV2104的电源才进行上电。 请问:CDCLV2104在未上电前输入管脚就有时钟输入,是否存在问题?
    发表于 11-12 07:47

    TPA3110D2音频板用开关电源+12V供电,上电后音源还没输出就有噪声,怎么解决?

    TPA3110D2音频板用开关电源+12V供电,上电后音源还没输出就有噪声, 请问电源不换的情况下,在音频板上增加什么电路可以解决噪声?
    发表于 11-04 08:20

    tas5548接上usb在电脑上放音乐,放着放着就有爆破音了,为什么?

    刚买回来接上usb在电脑上放音乐3个小时左右没有异常,后来放着放着就有爆破音了,声音稍微大声一点都能听到。后来越来 越严重有嚎叫声了!tpa6138有可能坏了吗?
    发表于 10-25 06:07

    通过电池供电给TPA3116和风扇,当风扇开始工作,喇叭就有wenwen的噪声,如何解决?

    通过电池供电给3116和风扇,但是当风扇开始工作,喇叭就有wenwen的噪声,这个如何解决呢? 风扇是12V 0.1A的,直接接在A+11V1 谢谢!
    发表于 10-12 08:05

    为什么按键消抖那么重要

    按键稳定性和可靠性对于整个系统的性能至关重要。然而,由于机械触点的弹性作用,按键在闭合和断开时往往伴随着抖动现象。这种抖动虽然对人类来说微不足道,但对于高速运行的单片机而言,却可能导致严重的误判
    的头像 发表于 09-25 16:50 513次阅读
    为什么按键消抖<b class='flag-5'>那么</b><b class='flag-5'>重要</b>

    LTC1068开关电容滤波器的静态电流为什么那么大?

    谁用过LTC1068开关电容滤波器啊,为什么静态电流那么大,指接正极还没接负极就有30mA了,有谁用过吗
    发表于 09-19 07:35

    ths3001怎么那么容易就自激了?怎么解决?

    ths3001怎么那么容易就自激了
    发表于 09-11 08:12

    用VCA821做压控放大器,为什么供电电压给到±2V就有电流0.02A往上加电压电流越大?

    本人最近在用VCA821做压控放大器,可不知道为什么我的供电电压给到±2V就有电流0.02A往上加电压电流越大。下面是我的电路图
    发表于 08-23 08:10

    算力与AI大爆发,液冷为何那么重要

    夏日炎炎,数据中心制冷技术全新升级,液冷散热,让服务器清凉一夏。本文将带您一起探索数据中心液冷需求、技术及实际应用。1数据中心液冷需求AI浪潮来袭,数据中心的服务器部署的更多了。服务器变得更强了,也更热了。有什么办法,给服务器“物理降温”吗?根据国家对数据中心的节能要求,全国范围内新建数据中心要求PUE(PowerUsageEffectiveness,电源利
    的头像 发表于 06-21 08:05 151次阅读
    算力与AI大爆发,液冷为何<b class='flag-5'>那么</b><b class='flag-5'>重要</b>?

    求助,ADC接地的重要性?

    ADC接地的重要
    发表于 06-04 07:56

    为什么GPU对AI如此重要

    GPU在人工智能中相当于稀土金属,甚至黄金,它们在当今生成式人工智能时代中的作用不可或缺。那么,为什么GPU在人工智能发展中如此重要呢?什么是GPU图形处理器(GPU)是一种通常用于进行快速数学计算
    的头像 发表于 05-17 08:27 684次阅读
    为什么GPU对AI如此<b class='flag-5'>重要</b>?

    使用STM8S的FLASH库函数时,警告就有20多个,使用寄存器方式就一个警告没有,怎么处理?

    您好!我在使用STM8S的FLASH库函数时,警告就有20多个,而我使用寄存器方式就一个警告没有。针对库函数的警告问题,有何高招!
    发表于 03-22 14:53

    电抗器在工业领域中的重要

    电抗器简单来说它就是一个电感,它是对交流电流具有阻碍作用。那么用电感来制成的电抗器它在工业行业中有什么作用呢?今日萨顿斯STS就来简单地聊一聊它对工业行业重要性。
    的头像 发表于 01-22 11:03 512次阅读
    电抗器在工业领域中的<b class='flag-5'>重要</b>性