теоретический вопрос.
процессор х86 при сравнении с нулем сразу выставляет флаги, по которым можно узнать больше число нуля, меньше или равно.
в Perl'e подобное можно написать (здесь не с нулем, но все равно принцип тот же -- больше, меньше или равно, главное при помощи ОДНОЙ проверки получить 3 ветки ветвления):
Jan2ary
здесь просто выбор функции по номеру из массива
в перле я использовал массив для обращения к метке из-за того, что там при значении -1 (которое можно получить из <=> или cmp ) можно получить последний элемент массива
т.е. в С можно получить 3 значения сравнив строки, но вопрос в том, как это сразу использовать и как такое сделать для чисел (в первую очередь)
phenom x4 905e, asus m4a79 deluxe, 4 gb, ati x550, ati 4350, 2 x 17" LCD
(сравнение на 0 лучше делать после сравнения на <0, т.к. вероятность получить =0 меньше :-)
(не знаю, но по моему, и перл и пример с-дьябло в итоге также делают...)
PS: огромнейшее спасибо Jan2ary за пример с выбором функции по номеру из массива. Было время, когда такой финт мне очень был нужен, но в книгах своих такого не нашел, и на программку одну забил до лучших времен. Пойду доделаю. :)
Живая мысль подобна реке бегущей с гор - будучи полноводной, не засохнет, но непременно впадет в океан.