简化MAIN函数,提高代码可读性

2024-03-19 00:32

本文主要是介绍简化MAIN函数,提高代码可读性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简化MAIN函数,提高代码可读性

        C的设计原则是把函数作为程序的构成模块。main()函数称之为主函数,一个C程序总是从main()函数开始执行的。

        如果把一段具有某种功能的C代码看成是积木达成的模型,那么函数就可以当成是积木。我们可以用不同形状的积木搭建出房子、小汽车、火车等模型,同样我们使用函数可以组装出实现不同功能的C程序。

       一段漂亮的C代码是这么写的:

#include<stdio.h>

#define  BGSJ  2012/10/15

/*全局变量定义*/

……

/*函数声明*/

……

int main(void)

{

  /*局部变量定义*/

  int resp = 0;/*定义并初始化变量*/

 

  /*环境准备,如初始化变量*/

  resp = Init_Var();

  错误判断及处理逻辑;

  resp = Check_Input();

  错误判断及处理逻辑;

  resp = Regist_Database();

错误判断及处理逻辑;

 

 exit:

  return 0;

  }

 /*函数定义*/

……

/*end of file*/

 

        为什么说上述代码漂亮?

        首先,代码的可读性很强。从main函数开始读,我们很容易的可以看出,该程序分四个部分,第一部分环境准备,完成变量初始化工作;第二部分校验输入,完成输入变量的有效性检查工作;第三部分注册数据库,与数据库交互,在数据库提交更改;第四部分,程序正常退出。分析到了这,程序的流程图也就出来了。如果要得到更细化的流程图,需要对每个部分按照上述逻辑再细分。

       其次,代码的可维护性也很强。如果项目组成员都按照这样的规范编写代码,将来的运维人员拿到代码后,很容易定位到BUG出现的位置,也很容易修改。

       另外,这样编写代码对于抽象函数很有帮助。我们都知道,在一个程序里,不要出现功能类似或者相同的两段代码,要用函数来实现。如果代码是按照上述规范编写的,那么我们在后期增加新功能的时候,很容易阅读出程序有哪些函数可以使用,是否有必要编写新函数等。

       当然我们所说的都是在程序基本功能正确的前提下,如果程序实现不了预期需求或者与预期需求有差异,那再漂亮、整洁的代码也不是我们想要的。

       共同努力,追求功能完备、漂亮整洁的代码!

 

 

这篇关于简化MAIN函数,提高代码可读性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/824215

相关文章

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

MyBatis中的两种参数传递类型详解(示例代码)

《MyBatis中的两种参数传递类型详解(示例代码)》文章介绍了MyBatis中传递多个参数的两种方式,使用Map和使用@Param注解或封装POJO,Map方式适用于动态、不固定的参数,但可读性和安... 目录✅ android方式一:使用Map<String, Object>✅ 方式二:使用@Param

SpringBoot实现图形验证码的示例代码

《SpringBoot实现图形验证码的示例代码》验证码的实现方式有很多,可以由前端实现,也可以由后端进行实现,也有很多的插件和工具包可以使用,在这里,我们使用Hutool提供的小工具实现,本文介绍Sp... 目录项目创建前端代码实现约定前后端交互接口需求分析接口定义Hutool工具实现服务器端代码引入依赖获

利用Python在万圣节实现比心弹窗告白代码

《利用Python在万圣节实现比心弹窗告白代码》:本文主要介绍关于利用Python在万圣节实现比心弹窗告白代码的相关资料,每个弹窗会显示一条温馨提示,程序通过参数方程绘制爱心形状,并使用多线程技术... 目录前言效果预览要点1. 爱心曲线方程2. 显示温馨弹窗函数(详细拆解)2.1 函数定义和延迟机制2.2

pandas使用apply函数给表格同时添加多列

《pandas使用apply函数给表格同时添加多列》本文介绍了利用Pandas的apply函数在DataFrame中同时添加多列,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习... 目录一、Pandas使用apply函数给表格同时添加多列二、应用示例一、Pandas使用apply函

Springmvc常用的注解代码示例

《Springmvc常用的注解代码示例》本文介绍了SpringMVC中常用的控制器和请求映射注解,包括@Controller、@RequestMapping等,以及请求参数绑定注解,如@Request... 目录一、控制器与请求映射注解二、请求参数绑定注解三、其他常用注解(扩展)四、注解使用注意事项一、控制

Python中Namespace()函数详解

《Python中Namespace()函数详解》Namespace是argparse模块提供的一个类,用于创建命名空间对象,它允许通过点操作符访问数据,比字典更易读,在深度学习项目中常用于加载配置、命... 目录1. 为什么使用 Namespace?2. Namespace 的本质是什么?3. Namesp

C++简单日志系统实现代码示例

《C++简单日志系统实现代码示例》日志系统是成熟软件中的一个重要组成部分,其记录软件的使用和运行行为,方便事后进行故障分析、数据统计等,:本文主要介绍C++简单日志系统实现的相关资料,文中通过代码... 目录前言Util.hppLevel.hppLogMsg.hppFormat.hppSink.hppBuf

MySQL中如何求平均值常见实例(AVG函数详解)

《MySQL中如何求平均值常见实例(AVG函数详解)》MySQLavg()是一个聚合函数,用于返回各种记录中表达式的平均值,:本文主要介绍MySQL中用AVG函数如何求平均值的相关资料,文中通过代... 目录前言一、基本语法二、示例讲解1. 计算全表平均分2. 计算某门课程的平均分(例如:Math)三、结合