ce7c5e2ee99ffe70b7aaa751300a424f.gif

正文


大家好,我是bug菌~

最近来了位新同事,闲暇时分聊了几句,其中有一点让我记忆特别深刻,说:"怎么我们这边代码中的花括号风格都独立另起一行,看代码的时候挺不适应的~",我笑着说:"习惯就好了~"。

其实对于C代码中花括号的书写风格,bug菌也不是第一次听到不一样的声音了,包括之前文章中所编写的一些代码示例,也是有朋友跟我提及此事。

其实对于C代码中的花括号的风格也绝非偶然,他们是有具体的命名和使用考虑的,目前使用比较广泛的是如下两种风格:

风格一:Kernighan & Ritchie风格,也就K&R Style

void function()
{
    if(bTrue){
    //do someting......
    } else{
    //do someting......
    }
}

这种风格的花括号与使用它的语句同一行,其实这也是Linux内核中常采用的一种风格,相比风格二没有单独起一行,在一定程度上降低了代码长度,整体更加紧凑,但使用者经常会衍生出各种变体风格。

风格二:Allman风格,也叫BSD Style。

void function()
{
    if(bTrue)
    {
        //do someting......
    } 
    else
    {
        //do someting......
    }
}

这种风格也是bug菌目前习惯的一种编码风格,该编码风格有一种对称美,可能也是早已习惯的原因吧,但缺点也很明显,比较浪费行,一些朋友常说:"我都没写几句代码,却占了一个显示器~"。

至于花括号使用哪种风格也是一直存在一些争议,也没有说哪种风格会更胜一筹,所以不管选择哪种风格,最重要的是保持统一,不用过分纠结。

最后,做个投票统计,看看同行的花括号使用的哪种风格吧:

最后

      好了,今天就跟大家分享这么多了,如果你觉得有所收获,一定记得点个~,

最后一个bug,bug菌唯一创作平台~

667da6fafdb9fb3b7428d03795a9eef2.jpeg

推荐专辑  点击蓝色字体即可跳转

☞  MCU进阶专辑 41b679e7d84b9426d2b2f5f1dacf2af6.gif

☞  嵌入式C语言进阶专辑 e026bb9c106424b0e616869114267152.gif

☞  “bug说”专辑 d303c8c819f109c729b74ca5fac7bdc9.gif

☞ 专辑|Linux应用程序编程大全

☞ 专辑|学点网络知识

☞ 专辑|手撕C语言

☞ 专辑|手撕C++语言

☞ 专辑|经验分享

☞ 专辑|电能控制技术

☞ 专辑 | 从单片机到Linux

1fc1d16982bce91c2dea907a6e843850.gif

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐