这两周的算法实验课,我的代码被老师抨击说太丑了QwQ;所以我决心改变代码风格,Google风格貌似在SYSU挺盛行的,所以今天我们就来简单看一下算法竞赛中可能用到的Google风格的六点C代码规则吧。
对齐与缩进
1.花括号的位置:左花括号不另起一行,右花括号另起一行。
2.位于同一层( { 和 } 之内)的代码进行统一空格数的缩进,一般使用4个空格或者Tab键。
例子如下:
代码块之间的空行
1.每个函数中间隔空行。
2.不同逻辑的代码块之间隔空行。
例子如下:
代码行之间的空格
1.赋值、算数、逻辑等二元运算符前后各加一个空格,但一元运算符前后一般不加空格。
2.行内的,和;后留一个空格。
例子如下:
代码行
1.一行只写一个语句,方便测试。
2.If、for、while等语句各占一行,执行语句无论有几条都用 { 和 } 将其包含在内,避免出错。
例子如下:
命名
1.变量命名:小写字母加下划线组成。每个单词使用下划线隔开。
2.函数命名:小写字母加大写字母。每个单词首字母使用大写字母。
例子如下:
修饰符*的位置
尽量靠近变量名。
例子如下:
if语句代码风
推荐样式:不同层级语句之间需要添加缩进,方便清晰看出判断逻辑;if语句的结束在同列最后一个大括号处:
不推荐样例:未添加合理的缩进,导致嵌套层次不明确,不好判断同级关系:
switch语句代码风格
switch语句代码风格:
每条case语句后需要添加break,否则将会运行该case语句后的其他语句:
循环语句代码风格
for循环语句代码风格:
while 语句的代码风格:
do-while语句:
先运行do内的代码段,然后再进行判断。do内语句至少运行一次。
结语
这里只是Google风格的冰山一角,但已经足以供竞赛选手大部分程序所用了,希望我们能一同写出好看的代码。最后希望你喜欢这篇BLOG!
所以我用DevCPP写完我必用Clion格式化(误
我什么时候才能学会用高级的IDE
话说好像DEV也有Astyle可以用୧(๑•̀⌄•́๑)૭?
QwQ我也不会高级的IDE……(大哭)
大佬,请问为什么左花括号要同行呀。都单独起一行不是更对称吗qwq
狗头其实我也觉得不同行更好看QwQ;但这应该是为了统一JAVA和C的代码风格而定下来的,在Google的JAVA代码规范里这样写道——“对于非空块和块状结构,大括号遵循Kernighan和Ritchie风格 (Egyptian brackets):左大括号前不换行,左大括号后换行,右大括号前换行,如果右大括号是一个语句、函数体或类的终止,则右大括号后换行; 否则不换行。”其中的这种Kernighan和Ritchie风格也许是Google所青睐的吧。
握爪QWQ。确实有些不理解,特别是大括号的书写格式,一行代码中包含太多括号中看起来觉得有些凌乱
看习惯其实……还真的有那么一丝好看QwQ
visual studio可以自动调整格式,比如空格qwq。
visual studio可以自动调整格式,比如空格OωO
酱紫,涨知识惹