[P&AM Lab] Библиотека больших чисел

Grigoriy A. Sitkarev sitkarev на komitex.ru
Вт Мар 15 00:16:57 MSK 2011


> Смущает количество return`ов (7 штук). res можно вытащить(скобочки
> лишние не хотел).

Мы ещё и goto пользуемся, если это нужно.

Это в структурном программировании на goto и несколько return-ов наложен 
запрет, часто просто бездумно ему следуют. А мы нет.

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

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

	if (a->top > b->top)
		res = 1;
	else if (a->top < b->top)
		res = -1;
	else {
		...
	}

С типографской точки зрения лучше выглядит:

	if (a->top > b->top) {
		res = 1;
	} else if (a->top < b->top) {
		res = -1;
	else {
		...
	}

--
Г.А.




Подробная информация о списке рассылки Lab