Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Правило #4, про горизонтальные пробелы






В конце строки пробелов быть не должно!!! Ну незачем там они. Пробелы ОБЯЗАТЕЛЬНЫ после запятой, как в обычном тексте. Пробелы полезны вокруг знака какой-нибудь операции.

НЕправильно:

 

for(k=NUM; k; k--){

int tmp;

tmp=some_func(k, arg2, arg3);

printf(" %d\n", tmp);

}

 

Правильно:

for (k = NUM; k; k--) {

int tmp;

tmp = some_func(k, arg2, arg3);

printf(" %d\n", tmp);

}

Правило #5,
про вертикальные пробелы (пустые строки)

Не жалейте пустые строки, вставляйте где вам хочется, пожалейте лучше себя и преподавателя. Обязательны пустые строки перед и после определений функций. Логические части функции тоже нужно отделять друг от друга пустой строкой, например, цикл от предшествующих или последующих операторов.

НЕправильно:

 

int func_1(void)

{ return 1;

}int func_1(void)

{ return 2;

}

int main(void) {

LIST *l = get_head(); double a, b; printf(" Hello.\n");

for (l; l-> next; l=l-> next)

printf(" %s\n", l-> name);

}; printf(" Bye.\n"); }

 

Правильно:

 

int func_1(void)

{

return 1;

}

 

int func_1(void)

{

return 2;

}

 

int main(void)

{

LIST *l = get_head();

double a, b;

 

printf(" Hello.\n");

 

for (l; l-> next; l = l-> next)

printf(" %s\n", l-> name);

 

printf(" Bye.\n");

}

 

Правило #6, про объявления переменных

Тип у переменной писать для КАЖДОЙ из них. На одной строчке - одна переменная.

НЕправильно:

 

int a, b, c;

float *q, w, u, z, tmp, ttt, qqq, aaa, bbb;

........

a, b, c, d, ttt, test, tt0: integer;

q, w, u, z, ppp, ddd, ddd0, ddd23: real;

 

Правильно:

 

int a;

int b;

int c;

float *q;

........

a: integer;

b: integer;

c: integer;

q: real;

 

Это правило вызывает наибольшее недоумение. Однако, его соблюдение делает текст более ясным и, кроме того, в процессе разработки при возникновении необходимости удалить описание какой-либо переменной это можно сделать одним нажатием (команда удалить строку), а не многократным нажатием Del или Backspace. Впрочем, если, к примеру, в программе есть двойной цикл for(), то управляющие переменные цикла можно описать на одной строчке:

 

 

int j, k;

int counter;

 

Однако, описания переменных, сильно различающихся по смыслу содержимого, следует помещать на разных строчках.

Правило #7, про говорящие идентификаторы

Идентификаторы (названия переменных, типов, подпрограмм) должны быть значимыми настолько, чтобы читающий текст программы мог понимать смысл всех переменных и т.д. без присутствия рядом автора. Читающим может оказаться и сам автор... где-то так через полгодика. И будет мучительно вспоминать, что же означало " ffff_1" и " aaa". Если есть какая-то производная, назовите ее Deriv, Proizvod, но никак не FF.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.008 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал