Мы тут про язык Си. Это НЕ машино-зависимая особенность.
"2" в тексте кода это литерал. "i+2" выражение оперирует идентификатором i, оператором + и литералом 2. Вы понимаете разницу между константой и литералом?
Да, там не использовали специально сборку, где оторвали только UI от защиты, оставив всю логику активной; там отрывали защиту от реальных сборок. Тесты слишком честные были.
Подозреваю, что тут зависит от
-funsafe-math-optimizationsименно из-за вопросов точности и допустимости фолдингаИ что вы хотите мне тут сказать?
Оба случая две двойки схлопнулись в одну четвёрку.
Я подозреваю, вы серьёзно так троллите... Но для читателей приведу пример: https://godbolt.org/z/E9ssr1n1c
Пять вариантов:
Если с -O0 разница есть (по понятным причинам), на -O1 уже все компиляторы выдают одинаковый код для всех 5 выражений.
ну и, чтоб два раза не вставать, еще пример: https://godbolt.org/z/YPve5vK45
Опять же, уже на -O1 -- найдите, пожалуйста, разницу, между сгенерированным кодом, хотя на входе -- свич, иф, иф-елзе.
Мы тут про язык Си. Это НЕ машино-зависимая особенность.
"2" в тексте кода это литерал. "i+2" выражение оперирует идентификатором i, оператором + и литералом 2. Вы понимаете разницу между константой и литералом?
Расскажите, пожалуйста, как литералу стать константой.
Расскажите, пожалуйста, как литерал "2" превращается в "константы, в нестираемой памяти"
I/i это опечатка, телефон правит за меня.
Так вот, оптимизирующие компиляторы сделают все три одинаково. Потому что итог - и на 4 больше чем до. Побочных эффектов нет.
И компилятор может вообще заменить на константу, выбросив все и пересчитав в процессе.
А тупые компиляторы сделают вычисление 2+2 как отдельно в рантайме и только потом добавят...
До сих пор можно встретить компилятор, в которых
Компилируются по разному. Вы считаете, что это разные вещи?
switch и if эквивалентны, и компиляторы имеют полное право это делать.
Да, там не использовали специально сборку, где оторвали только UI от защиты, оставив всю логику активной; там отрывали защиту от реальных сборок. Тесты слишком честные были.
Так уже были многократные тесты с и без защиты... Вполне себе доказали что тормозит и ышшо как
В смысле, отражений не существует? :) Через окно не видно?
А в чем отличие от старого боброго IrDA?
еще полезно использовать:
И ширина O и 0 была одинаковая, да.
А чем вот это печатали? Интересный материал...
В смысле, Il1 ?
Тоже хороший способ, да. но, к сожалению, `int i` это нормально :(
О, а вот это удобный вариант проводного коврика. Не то, что у SteelSeries
Я считаю что самым важным навыком для изучения это Oo0 паттерн. Что может быть лучше?
А это советская микросхема. У неё 16 ножек и 4 ручки, для переноски.
Тоже A4Tech NB-чтототам, но круглые были неудобные -- слишком маленькое поле