简化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

相关文章

C++使用栈实现括号匹配的代码详解

《C++使用栈实现括号匹配的代码详解》在编程中,括号匹配是一个常见问题,尤其是在处理数学表达式、编译器解析等任务时,栈是一种非常适合处理此类问题的数据结构,能够精确地管理括号的匹配问题,本文将通过C+... 目录引言问题描述代码讲解代码解析栈的状态表示测试总结引言在编程中,括号匹配是一个常见问题,尤其是在

Java调用DeepSeek API的最佳实践及详细代码示例

《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

Python中顺序结构和循环结构示例代码

《Python中顺序结构和循环结构示例代码》:本文主要介绍Python中的条件语句和循环语句,条件语句用于根据条件执行不同的代码块,循环语句用于重复执行一段代码,文章还详细说明了range函数的使... 目录一、条件语句(1)条件语句的定义(2)条件语句的语法(a)单分支 if(b)双分支 if-else(

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

MySQL数据库函数之JSON_EXTRACT示例代码

《MySQL数据库函数之JSON_EXTRACT示例代码》:本文主要介绍MySQL数据库函数之JSON_EXTRACT的相关资料,JSON_EXTRACT()函数用于从JSON文档中提取值,支持对... 目录前言基本语法路径表达式示例示例 1: 提取简单值示例 2: 提取嵌套值示例 3: 提取数组中的值注意

CSS3中使用flex和grid实现等高元素布局的示例代码

《CSS3中使用flex和grid实现等高元素布局的示例代码》:本文主要介绍了使用CSS3中的Flexbox和Grid布局实现等高元素布局的方法,通过简单的两列实现、每行放置3列以及全部代码的展示,展示了这两种布局方式的实现细节和效果,详细内容请阅读本文,希望能对你有所帮助... 过往的实现方法是使用浮动加

在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程

《在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程》本文介绍了在Java中使用ModelMapper库简化Shapefile属性转JavaBean的过程,对比... 目录前言一、原始的处理办法1、使用Set方法来转换2、使用构造方法转换二、基于ModelMapper

JAVA调用Deepseek的api完成基本对话简单代码示例

《JAVA调用Deepseek的api完成基本对话简单代码示例》:本文主要介绍JAVA调用Deepseek的api完成基本对话的相关资料,文中详细讲解了如何获取DeepSeekAPI密钥、添加H... 获取API密钥首先,从DeepSeek平台获取API密钥,用于身份验证。添加HTTP客户端依赖使用Jav