LINUX.ORG.RU

Программируя на «C», как вы оформляете код?

 


2

1

Собственно сейчас выбираю наиболее приемлемый вариант для себя. Для меня тема стоит очень серьёзная, склоняюсь к allman. Интересно кто как пишет, в каком стиле и почему.

  1. Мне всё равно, какой стиль у меня 242 (30%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. K&R 207 (26%)

    *********************************************************************************************************************************************************************************************************************************************************************************

  3. Свой стиль 181 (23%)

    ***********************************************************************************************************************************************************************************************************************************************

  4. GNU 98 (12%)

    *********************************************************************************************************************************

  5. allman 82 (10%)

    ************************************************************************************************************

  6. linux 62 (8%)

    *********************************************************************************

  7. 1tbs 31 (4%)

    ****************************************

  8. stroustrup 30 (4%)

    ***************************************

  9. whitesmith 10 (1%)

    *************

  10. banner 6 (1%)

    *******

  11. horstmann 6 (1%)

    *******

Всего голосов: 955, всего проголосовавших: 804

★★★★★

Проверено: post-factum ()
Последнее исправление: Binary (всего исправлений: 1)

Я хз как они там называются, покажу на примере.

function() {
} 

Сейчас оформляю так, пошло от того, что познал джаву, раньше писал так:

function()
{
}

Zhbert ★★★★★
()

type fname(args){
    type
         var1 // comment 4 var1
        ,var2 // comment 4 var2
        …
    …
    if(cond){
        …
    }
    switch(cond){
        case1:
            casebody;
        break;
        …
        default:
            defbody;
    }
    return ret;
}
Eddy_Em ☆☆☆☆☆
()

Придерживаюсь норм, принятых в проекте. Если пишу один, использую так называемый lisp-style, так как это наиболее компактно.

staseg ★★★★★
()

Ты бы ссылочки на образцы кинул. Откуда я знаю, например, в чем особенности GNU-стиля, или, скажем, что вообще за 1tbs такой.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Прочитал. ТС вводит народ в заблуждение.

та он просто нагуглил «стилей», и даже не вдавался. По теме, лично я не считаю, что стили это очень уж важно. Надо один какой-нить выбрать, ну и его юзать. Часто выбирают за кодера - не буде-то же вся команда переучиваться на новый стиль...

drBatty ★★
()
Ответ на: комментарий от Dron

Есть стиль оформления кода С как в Java

то, что нам тут показывали может и принято в яве, но на самом деле этот стиль был принят ещё до этой вашей жабы.

А что, компилятор/JIT жабы не умеет других отступов? Тогда пичалька...

drBatty ★★
()
Ответ на: комментарий от Zhbert

В жабе по-умолчанию так пишут.

ты хотел написать «в моём любимом текстовом редакторе/IDE»? Насколько я знаю, все ЯП кроме питона допускают любой стиль, и даже отсутствие стиля. Даже BrainFuck.

drBatty ★★
()
Ответ на: комментарий от drBatty

Насколько я знаю, все ЯП кроме питона допускают любой стиль, и даже отсутствие стиля.

Питон не одинок, еще есть whitespace. Впрочем, такой же недоязычок как и сам питон.

staseg ★★★★★
()
Ответ на: комментарий от Dron

1-Стиль важен.

стиль важен. Но важно, что-бы он был. Не важно какой именно.

Не гуглил, а «astyle».

не нужно.

А ваще кононично 1tbs. Ибо тру. Но лично мне более удобен Allman.

drBatty ★★
()
Ответ на: комментарий от staseg

Питон не одинок, еще есть whitespace. Впрочем, такой же недоязычок как и сам питон.

лично я не пойму нужность питона, ну ладно, пришлось познакомится - на нём хоть пишут что-то. А про вайтспейс не слышал, Патрег миловал.

drBatty ★★
()
Ответ на: комментарий от Zhbert

Нет, я хотел сказать то, что сказал. Посмотри любые книжки и мануалы по джаве.

фтопку вашу жабу. тормозная НЁХ. ИМХО.

drBatty ★★
()
Ответ на: комментарий от Zhbert

Мы не о том, какая она, вообще-то. Следи за мыслью.

ага. Вот и следи - жаба не может быть пруфом в силу вышеперечисленного. И как там жабокодеры оформляют свой жабо код - никого не волнует. А продемонстрированный тобой стиль существовал задолго до этой вашей жабы.

drBatty ★★
()
Ответ на: комментарий от drBatty

И что? Как это связано с тем, что я так стал оформлять код после того, как познал джаву?

Zhbert ★★★★★
()
Ответ на: комментарий от dismal_faun

Да, его изобрели еще в Древнем Египте.

улыбнуло

Dron ★★★★★
() автор топика

K&R для своих и по гайдлайнам проекта для чужих )
но кернигановский как-то мне особенно по душе )

aol ★★★★★
()

Ну как строчка заканчивается, так и переношу.

Debasher ★★★★★
()
Ответ на: комментарий от Dron

чем astyle лучше indent?
у самого претензии к indent, он иногда лишние символы вставляет, и с с++ косячненько.

aptyp ★★★★
()
Ответ на: комментарий от aptyp

Не знаю не использовал indent.

Dron ★★★★★
() автор топика

[x] Свой стиль

indent \
--gnu-style \
--format-first-column-comments \
--indent-level4 \
--brace-indent0 \
--line-length100 \
--no-tabs \
--blank-lines-after-procedures \
$@

Slavaz ★★★★★
()

Свой стиль

spaces 4
indent brackets labels directives switches
attach brackets
don't break all blocks
Pad parenthesis: unpad
add spaces after parenthesis_headers
add spaces around operators
pointer alignment: Type
void func() {
    if (isFoo(a, b))
        bar(a, b);
    if (isFoo)
        a = bar((b - c) * a, *d--);
    if (isFoo(a, b))
        bar(a, b);
    if (isFoo) {
        isFoo = false;
        cat << isFoo << endl;
        }
    if (isFoo)DoBar();
    if (isFoo) {
        bar();
        }
    else if (isBar()) {
        annotherBar();
        }
    int var = 1;
    int* ptr = &var;
    int& ref = i;

    QList<int>::const_iterator it = list.begin();
    }
namespace A {
namespace B {
void foo() {
    if (true) {
        func();
        }
    else {
        // bla
        }
    }
}
}
nCdy
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.