C语言的代码编译风格多种多样。每个编译器的编译方式也有所差别。拿VS2019编译器来说,我们怎么写代码才能有通俗易懂,简单方便的写法呢?

1.重要的代码后面常加注释

注释可以有助于读者更好的理解代码的意思,避免理解过度,用//标注注释。

2.自定义函数

在自定义函数时,我们一定要确定函数有无返回值,以及函数是否需要传参。例如:

void main(void)

{

}

当读者看到这段代码时,会很清晰的看出此函数不需要返回值,故不需要在函数结尾写return,若我们在此函数中加上返回值,编译器也可以运行,例如:

void main(int x,int y)

{

rutern 0;

}

这段代码看似矛盾,实则也可以运行。不过我们不推荐这种写法。

第二,就是对函数参数的传参。

void main(void)

{

}

此函数明确指出不需要传参,所以

我们在声明函数时也不需要在括号内加入参数。如果依然加入参数,编译器会报出警告,函数依然接收不到参数。所以,在面对已经确定的空的传参内容的函数时,我们没必要再对声明中的函数传参。

3.变量命名

全局变量、普通变量、结构体变量、临时变量统⼀采⽤⼩写单词加下划线式的命名格式,如this_is_name。不建议用中文拼音,中英文混合等方式书写变量。加注下划线有助于使变量名清晰。

C语言良好的代码风格相关推荐

  1. PEP8 - Python 代码风格指南中英对照

    PEP8 - Python 代码风格指南中英对照 Introduction A Foolish Consistency is the Hobgoblin of Little Minds Code la ...

  2. Go语言中的注释类型和代码风格

    Go语言中的注释类型 Go的代码风格

  3. e语言通用进销存源码_Go 语言设计哲学之五:代码风格的唯一标准

    一. gofmt Go 语言设计的目标之一就是解决大型软件系统的大规模开发的问题,解决大型团队的开发问题,Go 核心团队给它起了一个名字叫:规模化(scale). gofmt 是伴随着 Go 语言诞生 ...

  4. Golang 从菜鸟到大咖的必经之路_GO 语言的转义字符、注释、规范和代码风格要求

    目录 一.GO 语言转义字符 A.Golang 常用的转义字符(escape char): B.课程练习 二.Go 语言注释: A.注释(Comment): B.Go 语言中的注释类型: C.注释不会 ...

  5. 【重磅】Uber Go 语言代码风格指南

    原文地址:https://github.com/uber-go/guide/blob/master/style.md 译文出处:https://github.com/uber-go/guide 本文永 ...

  6. c语言语系的命名风格和java系命名风格

    c语言系的命名风格:单词之间使用下划线分隔.如上图. java语言是另外一个系,javascript属于java语系(当年就是想借助java的名气所以命名javascript).java语系是驼峰式命 ...

  7. 零基础自学Python:安装Python、解释器、代码风格等

    Python是一种面向对象.解释型计算机程序设计语言.语法简洁清晰,强制用空白符作为语句缩进.Python具有丰富和强大的库,又被称为胶水语言.能把其他语言(主要C/C++)写的模块很轻松的结合在一起 ...

  8. go语言复数包_Go语言中包的风格指南

    Go 语言也有自己的命名与代码组织规则.漂亮的代码,布局清晰.易读易懂,就像是设计严谨的 API 一样.拿到代码,用户首先看到和接触的就是布局.命名还有包的结构. 这篇文章不是为了给大家设立硬性的规定 ...

  9. 值得阅读的C语言开源项目代码

    本文地址:https://www.cnblogs.com/wuyudong/p/c-opensource-project.html,转载请注明源地址. 本篇文章主要总结一些C开源项目,有些是很著名的, ...

最新文章

  1. 我的《超级马里奥》我做主:会漂移掉头还带刹车音效,C++从零打造,网友:小心任天堂找你...
  2. spring三: 装配bean( 在xml中进行显式配置, 在java中进行显式配置)
  3. 成功解决AttributeError: module 'tensorflow.python.ops.nn' has no attribute '_seq2seq'
  4. DBD::mysql::db do failed: Table cl_access was locked with a READ lock and can't be updated
  5. 美国域名总量跌至7971万:4月上旬降幅缩小32.4%
  6. Spring 3整合Quartz 2实现定时任务(转)
  7. 网络机房利用()将多台计算机,2020现代教育技术章测试答案.doc
  8. (转)Ubuntu下JDK7安装全过程并调试第一个带包的java程序
  9. jquery 随楼层滚动导航激活状态改变特效
  10. hdu 5031 Lines 爆搜
  11. 关于||逻辑或运算符运算符
  12. 微服务网关Gateway在实战中如何结合注册中心,定义过滤器?
  13. Intellij IDEA创建maven项目无java文件问题
  14. JAVA环境变量配置方法(Windows)
  15. 博客搬家工具(服务)详解
  16. android 单独设置APP语言
  17. 两独立样本率的非劣效性试验-样本量计算
  18. 如何在Mac电脑上打开终端
  19. 明大推荐系统导论笔记 week 2
  20. R语言wmf矢量图片导出大片空白及搜索网站

热门文章

  1. win10无线投屏_Win10系统自带手机投屏功能真的能取代投屏器吗?
  2. 【黑马程序员西安中心】我和传智有个梦!
  3. 11、Vue的生命周期
  4. 设置linux能够被远程连接
  5. python函数返回多个变量_Python中接收函数多个返回结果的两种方法
  6. 1000道Python编程题
  7. 用python做自动化控制-用 Python 自动化办公能做到哪些有趣或有用的事情?
  8. 基于python的语料库数据处理电子版_[异步图书].精通Python自然语言处理[PDF][16.04MB]...
  9. 《你要如何衡量你的人生》笔记与感想(二)时光在流逝,而你失去了什么
  10. Linux基本常用命令|ubuntu获取root权限