Nginx代码风格图示
Nginx代码风格图示 (100%)
一、基本原则
K&R编码风格(偏BSD子类)。
每行不能超过80列。
不用TAB对齐,用空格。
默认对齐单元是4个空格。
除宏定义外,字母均为小写,单词间用下划线_间隔。
使用C方式的注释,不得使用//形式注释。
中缀运算符的前后须空一格,如3 + 2以及a > 3。
逗号后须空一格,如foo(a, b, c);
二、风格图示
1、 if/while/for/switch语句的左花括号和关键字在同一行上,和括号之间空一个空格。
2、 else关键字和两个花括号在同一行上。
3、 文件开始的注释空一行。
4、 较为完整的代码块间的距离为空两行。如函数声明、函数定义之间等。
5、 函数声明或定义若一行显示不下,则函数原型空4个空格。
6、 结构体数组的花括号和内容之间空一个空格。
7、 结构体数组的左花括号放在同一行上。
8、 较大的结构体数组元素最开始空一行。
9、 元素内容上下对齐。
10、注释上下对齐。
11、函数调用折行时,参数上下对齐。
12、函数定义时,类型单独一行。
13、变量声明的类型上下排列按照从短到长的顺序。注意,最下面的变量的类型和名称间的空格为2-3个。一般情况下为2个,这是Nginx中最小的变量声明中类型和名称的距离。
14、变量名称上下对齐——字母对齐,不包括指针的*号。
15、结构体内变量上下对齐(字母,不包括指针的的*号)。
16、单行注释格式为/* something */
17、多行注释的格式为:
/*
* something
*/
18、函数定义的左花括号独占一行。
19、switch语句中,switch和case关键字上下对齐。
20、当条件表达式过长需要折行时,关系运算符须位于下一行的行首,并与上一行的条件表达式的第一个字符对齐,同时右花括号须位于单独的一行,并与if/while等关键字对齐。
21、 else语句之前须空出一行。
22、在函数中,相同类型的变量声明放在一行上。
via:http://tengine.taobao.org/book/appendix_a.html
Nginx代码风格图示的更多相关文章
- Python 代码风格
1 原则 在开始讨论Python社区所采用的具体标准或是由其他人推荐的建议之前,考虑一些总体原则非常重要. 请记住可读性标准的目标是提升可读性.这些规则存在的目的就是为了帮助人读写代码,而不是相反. ...
- .NET 项目代码风格要求
原文:http://kb.cnblogs.com/page/179593/ 项目代码风格要求 PDF版下载:项目代码风格要求V1.0.pdf 代码风格没有正确与否,重要的是整齐划一,这是我拟的一份&l ...
- AngularJS之代码风格36条建议【一】(九)
前言 其实在新学一门知识时,我们应该注意下怎么书写代码更加规范,从开始就注意养成一个良好的习惯无论是对于bug的查找还是走人后别人熟悉代码都是非常好的,利人利己的事情何乐而不为呢,关于AngularJ ...
- Visual Studio Code 使用 ESLint 增强代码风格检查
前言 在团队协作开发中,为了统一代码风格,避免一些低级错误,应该设有团队成员统一遵守的编码规范.很多语言都提供了Lint工具来实现这样的功能,JavaScript也有类似的工具:ESLint.除了可以 ...
- plain framework 1 参考手册 入门指引之 代码风格
代码风格 介绍 介绍 框架自身采用了google的C++风格,作者也鼓励在你的应用中使用此风格,有关此风格你可以查阅相关资料了解.下面是一段plain framework中的代码,以便大家参考: 你可 ...
- 对 JimmyZhang 老师的文章《项目代码风格要求》的一些个人观点
Jimmy Zhang 老师是博客园中我最佩服的人之一,今天看了他的文章<项目代码风格要求>觉得大部分地方我都很认同,工作中也是强迫自己也要按照规范来编程.下面是我的一些个人观点,想贴出来 ...
- python代码风格-PEP8
转载自http://www.douban.com/note/134971609/ Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下 ...
- Google HTML/CSS代码风格指南(中文版)
原文链接:http://wncbl.cn/posts/c8e10815/ 看一下没什么印象,那就写一遍吧. 背景 本文档定义了HTML/CSS的编写格式和风格规则.它旨在提高合作和代码质量,并使其支持 ...
- .Net 项目代码风格要求小结
代码风格没有正确与否,重要的是整齐划一,这是我拟的一份<.Net 项目代码风格要求>,供大家参考. 1. C# 代码风格要求1.1注释 类型.属性.事件.方法.方法参数,根据需要添加注释. ...
随机推荐
- lvs直接路由模式DR模式
1)实验所有关闭防火墙systemtcl stop firewalldsystemctl disable firewalldsetenforce 0iptables -F2)配置负载调度器配置虚拟IP ...
- BZOJ 1984月下“毛景树” LCT维护边权 + 下传标记
Description 毛毛虫经过及时的变形,最终逃过的一劫,离开了菜妈的菜园. 毛毛虫经过千山万水,历尽千辛万苦,最后来到了小小的绍兴一中的校园里.爬啊爬~爬啊爬~~毛毛虫爬到了一颗小小的“毛景树” ...
- PAT_A1015#Reversible Primes
Source: PAT A1015 Reversible Primes (20 分) Description: A reversible prime in any number system is a ...
- eas之编辑界面中分录默认携带的标题栏
this.kdtEntrys_detailPanel.setTitle("物件内容"); KDContainer kdtEntrys_Container = (KDContai ...
- 阿里云服务器centos7环境下安装xampp后,mysql有进程,但是却没有监听3306端口
配置阿里云服务器centos7中xampp环境时出现了一种情况: 在centos中可以使用命令进入mysql 修改后也可以远程用phpmyadmin连接mysql 但是用navicat却无法连接 先修 ...
- nyoj169-素数
ms | 内存限制:65535 KB 难度:1 描述 走进世博园某信息通信馆,参观者将获得前所未有的尖端互动体验,一场充满创想和喜悦的信息通信互动体验秀将以全新形式呈现,从观众踏入展馆的第一步起, ...
- Oracle 解决表死锁
select 'alter system kill session ''' || SID || ',' || SERIAL# || ''';' from ( select distinct a.sid ...
- vue项目初始化结构
- netty 拆包和粘包 (三)
在tcp编程底层都有拆包和粘包的机制 拆包 当发送数据量过大时数据量会分多次发送 以前面helloWord代码为例 package com.liqiang.nettyTest2; public c ...
- POJ2116 Death to Binary?
/* POJ2116 Death to Binary? http://poj.org/problem?id=2116 齐肯多夫定理 */ #include <cstdio> #includ ...