C语言规范第一个花括号可以不独占一行吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言规范第一个花括号可以不独占一行吗?相关的知识,希望对你有一定的参考价值。
比如:
int main()
//...
return 0;
我喜欢这么写,行不行?
都另起一行怎么了,又不是为了打印少用纸张
两个对应的要左右对齐,包含的退格几个,这样好看
你在哪里写都无所谓,c的灵活性就在这里,一行可以写几个句子,一个句子可以写几行都是可以的。
并且编辑器基本上都忽略掉空格(打印的地方除外),一个句子中有很多空格都是可以的追问
google开发的go语言就知既然规定第一个话括号不能另起一行,我就想这些都是编程泰斗,肯定有道理吧
追答不要管其他语言,每种语言都有其特点,才能生存下去
c的特点就是灵活性,
及其能底层操作(这个就是c被称为中级语言而不是高级语言的由来)
你的问题就是c的灵活性方面
c语言太灵活,所以为了好读程序,所以给出了一些书写规范
其实就是为了让源代码容易读而已
c可以让一句话写好几行,在c++中调用api函数中你可以看到,他的参数很多,一行写下来很长,为了好看,可以多行写
c也可以让好几个句子写在一行当中(不是逗号运算),这样做的目的可能是为了节省界面吧
如排序中交换的那三句话,有的时候就可以写在一行中用花括号包含起来
如果这样的话,其实源代码是不怎么容易读的,所以不建议用这种方式写代码
看过很多人的源代码,如for,while,if等后面跟一句话时,很多人就紧接着写,这样程序不怎么好看,容易略过
有的把前花括号放在main,for,while,if,else后面
这样如果你忘记或者检查时,容易把后花括号忘记或者忽略掉,这样程序容易出错
其实说白了,c的一些书写规范都是前辈们总结出来的经验,为了好查错或者好读而已
vc6.0编辑器的书写规范就很好,你可以借鉴一下
c语言中,一行可以写很多很多语句,只要这些语句有明确的被分开就可以。 参考技术C 可以当然是可以,但是以后工作的话,公司都会给编程规范的,最好现在就养成好习惯吧 参考技术D 没问题啊,这是编码规范的问题,只要你自己遵循一致的规范就行,到公司以后公司会有自己的规范,大家遵循统一规范即可,不过c的规范大多大括号应该独占一行
代码规范
规范网址:https://github.com/PizzaLiu/PHP-FIG
一、PHP标签、字符编码
PHP代码必须使用 <?php ?> 长标签 或 <?= ?> 短输出标签; 一定不可使用其它自定义标签。
PHP代码必须且只可使用不带BOM的UTF-8编码。
二、命名空间和类
2.1 类
类的开始花括号必须独占一行,结束花括号也必须在类主体后独占一行。
每个类都独立为一个文件,且命名空间至少有一个层次:顶级的组织名称(vendor name)。
类的命名必须 遵循 StudlyCaps 大写开头的驼峰命名规范。
2.2 namespace
namespace 声明后 必须 插入一个空白行
所有 use 必须 在 namespace 后声明。
每条 use 声明语句 必须 只有一个 use 关键词。
use 声明语句块后 必须 要有一个空白行。
三、类的常量、属性和方法
3.1 常量
类的常量中所有字母都必须大写,词间以下划线分隔
关键词 extends 和 implements必须写在类名称的同一行。
3.2 属性
每个属性都必须添加访问修饰符。
类的属性命名可以遵循 大写开头的驼峰式 ($StudlyCaps)、小写开头的驼峰式 ($camelCase)又或者是 下划线分隔式 ($under_score)
一定不可使用关键字 var 声明一个属性。
每条语句一定不可定义超过一个属性。
不要使用下划线作为前缀,来区分属性是 protected 或 private。
3.3 方法
所有方法都必须添加访问修饰符。
不要使用下划线作为前缀,来区分方法是 protected 或 private。
方法名称后一定不能有空格符,其开始花括号必须独占一行,结束花括号也必须在方法主体后单独成一行。参数左括号后和右括号前一定不能有空格。
3.4 方法的参数
参数列表中,每个逗号后面必须要有一个空格,而逗号前面一定不能有空格。
有默认值的参数,必须放到参数列表的末尾。
3.5 abstract 、 final 、 以及 static
需要添加 abstract 或 final 声明时, 必须写在访问修饰符前,而 static 则必须写在其后。
3.6 方法及函数调用
方法及函数调用时,方法名或函数名与参数左括号之间一定不能有空格,参数右括号前也 一定不能有空格。每个逗号前一定不能有空格,但其后必须有一个空格。
参数可以分列成多行,此时包括第一个参数在内的每个参数都必须单独成行。
四、文件
所有PHP文件必须使用Unix LF (linefeed-换行)作为行的结束符。
所有PHP文件必须以一个空白行作为结束。
纯PHP代码文件必须省略最后的 ?> 结束标签。
五、行
非空行后一定不能有多余的空格符、每行一定不能存在多于一条语句。
六、缩进
代码必须使用4个空格符的缩进,一定不能用 tab键 。
七、关键字以及 true/false/null
PHP所有 关键字必须全部小写。
常量 true 、false 和 null 也必须全部小写。
八、控制结构
8.1 控制结构就是函数和判断
控制结构关键词后必须有一个空格。
左括号 ( 后一定不能有空格。
右括号 ) 前也一定不能有空格。
右括号 ) 与开始花括号 { 间一定有一个空格。
结构体主体一定要有一次缩进。
结束花括号 } 一定在结构体主体后单独成行。
8.2 if 、 elseif 和 else
8.3 switch 和 case
case 语句必须相对 switch 进行一次缩进,而 break 语句以及 case 内的其它语句都 必须 相对 case 进行一次缩进。 如果存在非空的 case 直穿语句,主体里必须有类似 // no break 的注释。
8.4 while 和 do while
8.5 for
8.6 foreach
8.7 tye 、catch
9 闭包
闭包声明时,关键词 function 后以及关键词 use 的前后都必须要有一个空格。
开始花括号必须写在声明的同一行,结束花括号必须紧跟主体结束的下一行。
参数列表和变量列表的左括号后以及右括号前,必须不能有空格。
参数和变量列表中,逗号前必须不能有空格,而逗号后必须要有空格。
闭包中有默认值的参数必须放到列表的后面。
标准的闭包声明语句如下所示,注意其 括号、逗号、空格以及花括号的位置。
以上是关于C语言规范第一个花括号可以不独占一行吗?的主要内容,如果未能解决你的问题,请参考以下文章
在C语言中,if和else if是否在不加花括号的情况下也是一个复合语句