цикл на minGW почти в два раза дольше (Это понятно, там вызов вместо сдвига). Причем литкодовский компилятор наоборот выдал обратный результат. Я чего то не понимаю?
Во-первых, условие перевычисляется на каждой итерации цикла, если компилятор не догадается соптимизировать. Во-вторых, включена ли оптимизация? В-третьих, pow(2, n) работает на floating point и он явно дороже побитового сдвига
А не догадается ли компилятор соптимизировать pow(2, n)? godbolt-time, кажется...
Обсуждают сегодня