count++%n
Запись от ПерС размещена 27.11.2013 в 10:00
Показов 3745
Комментарии 3
Делать кольцевой буфер в виде
| ||||||||||
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Всего комментариев 3
Комментарии
-
Запись от kazak размещена 09.12.2013 в 11:58
-
Запись от programina размещена 09.12.2013 в 19:42
-
Чтобы не переполнилось, нужно меньше выпендриваться и писать более аккуратно. Типа
Carray[count] = ...; count = (count + 1) %n;
Вариант с остатком от деления, ко всему прочему, гарантированно работает быстрее в случаях, когда n является степенью двойки. И с большой вероятностью работает быстрее в случаях с произвольным n. Потому что не содержит операцию условного перехода, которая обычно сильно напрягает конвейер процессора. count нужно так же сделать беззнаковым (это сгенерирует более эффективный код)Запись от Evg размещена 09.12.2013 в 19:49




