История изменений
Исправление
svv20624,
(текущая версия)
:
Весь рантайм — Undefined Behavior, Unspecified Behavior, and Implementation Speciifc.
Это.
Ответил на все вопросы как былоб в GCC10-11, на третьем вопросе понял что чтото тут подозрительно (результат того что в 3-м будет разным на ARM и x86-64 это я сам помню)
но вспоминая те самые «умные книжки»(из 80-х) и «умных преподов» которые впихивали что увеличивать адрес указателя вручную это «безопасно» и делать итерацию char/int/uint считая переполнение безопасным… зависит от ситуации, но старый код я никогда уже не использую, пусть идут куда подальше со своими бессмысленными оптимизациями
Исходная версия
svv20624,
:
Весь рантайм — Undefined Behavior, Unspecified Behavior, and Implementation Speciifc.
Это.
Ответил на все вопросы как былоб в GCC10-11, на третьем вопросе конял что чтото тут подозрительно (результат того что в 3-м будет разным на ARM и x86-64 это я сам помню)
но вспоминая те самые «умные книжки»(из 80-х) и «умных преподов» которые впихивали что увеличивать адрес указателя вручную это «безопасно» и делать итерацию char/int/uint считая переполнение безопасным… зависит от ситуации, но старый код я никогда уже не использую, пусть идут куда подальше со своими бессмысленными оптимизациями