代码的可读性【c入门】

前言:
作为一名正在学习c语言的学牲
在帮助同学debug时,意识到了一个问题:
代码的可读性十分糟糕。
这是也大多数小白入门是会遭遇到的问题。
为了在之后的学习中警醒自己,也为了尽自己的一份力来帮助同学,就写了这篇博客。
在这里插入图片描述

代码的基本结构

首先,无论是什么编程语言,都有一套属于自己的代码结构。
当代码按照一定的框架结构来组织时,就会呈现出独特的美感。
以c语言来举例:
下面展示c的基本框架 框架代码

#include <stdio.h>
int  main (void)
{
    return 0;
}

前期基本上的代码是沿用上述框架,
但,在这么一个框架中,打出来代码的可读性却可以做到千差万别。
下面就举一个栗子 判断数是否在某一区间

//可读性较差
#include<stdio.h>
int main(void){
int n;
scanf("%d",&n);
if(n<114 && n>=0) printf("1");
else if(n<514) printf("2");
else printf("0");
return 0;
}

//可读性较高
#include<stdio.h>
int main(void)
{
    int n;
    scanf("%d",&n);
    if(n<114 && n>=0)
    {
         printf("1");
    }
    else if(n<514)
    {
        printf("2");
    }
    else
    {
        printf("0");
    }
    return 0;
}

两个代码之间只是差了一些Tab缩进和括号,但已经可以看出两者带给你的阅读感受截然不同。

为什么要提高代码可读性

可读性,顾名思义,是指写出来的代码对他人造成的阅读障碍的大小,可读性越高,代码越容易让人读懂。

上述两种代码就体现了可读性的一部分差别,那就是对于分支语句的模块化,使其阅读起来更加规整。

但有些人心中仍有疑惑,可读性真的有这么重要吗?我自己看得懂不就行了?程序能运行不就行了?

事实上,程序不仅仅是自己看得懂就行的,还需要别人看得懂。当你的代码出现问题需要别人帮助debug的时候,人们往往愿意看可读性高的代码。
低可读性从某一方面说,就是阻碍发现bug的重要因素。
其次,高的可读性也利于自己对代码进行修改因为高可读性往往标志着代码的模块化
而井然有序的代码一定是比杂乱无序的代码更容易理清思路,找到漏洞。
在这里插入图片描述

如何提高代码可读性

说一千道一万,那么如何提高代码可读性呢?
对于小白来说,主要有以下几种方式:

  1. 以括号和缩进来划分模块
    一般来说只要遵循函数语句的用法,对齐括号就有较高可读性
//以if为例
if (x == 0)
{
}
  1. 多使用指代性强的变量名,让人一下子明白这个变量的功能,而不是简单地用a,b,c来表示
//例如表示用于储存总和的变量
int sum = 0;
//用于计数的变量
int count = 0;
  1. 在一些较复杂或者不好理解的地方加上注释
if(n<114 && n>=0) //表示如果n在[0,144)上就输出1
    {
         printf("1");
    }
  1. 在运算符左右加空格,与其他字符隔开,便于区分参与运算的单位
// 尤其是遇到很多运算的时候
printf ("%d\n",(a - b) / (a + b) * c);
  1. 减少代码量,明明可以用两三行优雅地解决,却要写五六行,过于冗长的代码也会造成可读性下降

*以上就是本篇博客的全部内容,感谢观看

  • 12
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

M-jjy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值