Немного философский вопрос, я полагаю.
В языке C имеется стандартный набор бит-операций, включая OR
, AND
, XOR
, SHIFT LEFT/RIGHT
и NOT
. Почему не вращать левые/вращать правильные операторы или функции, включенные в язык?
Эти операторы имеют одинаковую сложность, чем другие битовые операторы, и обычно требуется одна инструкция сборки, как и другие. Кроме того, я могу придумать множество применений для оператора rotate, возможно, не менее, скажем, оператора XOR
, поэтому мне кажется немного странным, что они не включены в C вместе с остальными.
Если вам нужно повернуть на C или С++, есть отдельный вопрос о наиболее подходящих для него вопросах. Обсуждение этого вопроса вне темы для этого вопроса.