c語言代碼風格

 

簡要:主要介紹了K&R風格和Allman(BSD)風格之間的縮進大小和大括號位置等區別less

關於其它的代碼風格,詳見:Indent style - Wikipediaide

 

一、K&R stylespa

When following K&R, each function has its opening brace at the next line on the same indent level as its header, the statements within the braces are indented, and the closing brace at the end is on the same indent level as the header of the function at a line of its own. The blocks inside a function, however, have their opening braces at the same line as their respective control statements; closing braces remain in a line of their own, unless followed by a keyword else or while.code

int main(int argc, char *argv[])
{
    int i; //

    //...
    while (p != NULL) {
        for (i = 0; i < 10; i++) // an example
            ;
        if (flag == true) {
            p = p->next;
            do_someting();
            break;
        } else
            do_something_else();
        p = p->next;
    }
    //...
    final_thing();
    return 0;
}

 

1.一、1TBS(OTBS) style,全稱:the one true brace styleblog

與K&R style的區別是:單語句的括號不省略。ip

    //...
    if (flag == true) {
        do_someting();
    } else {
        do_something_else();
    }

 

1.二、Linux kernel stylerem

與K&R style的區別是:縮進爲8格。get

int main(int argc, char *argv[])
{
        int i; //

        //...
        while (p != NULL) {
                for (i = 0; i < 10; i++) // an example
                        ;
                if (flag == true) {
                        p = p->next;
                        do_someting();
                        break;
                } else
                        do_something_else();
                p = p->next;
        }
        //...
        final_thing();
        return 0;
}

 

二、Allman style(BSD style)it

與K&R style的區別是:大括號單獨佔一行。io

int main(int argc, char *argv[])
{
    int i; //

    //...
    while (p != NULL)
    {
        for (i = 0; i < 10; i++) // an example
            ;
        if (flag == true)
        {
            p = p->next;
            do_someting();
            break;
        }
        else
            do_something_else();
        p = p->next;
    }
    //...
    final_thing();
    return 0;
}

 

之後首選K&R風格,其次Allman(BSD)風格,養成一個好習慣。

相關文章
相關標籤/搜索