нет. отпимизация никогда не меняет результат. а результат это и тип в том числе.
даже если оптимизатор уберет лишние операции, то результатом будет число, а не символ.
все верно ) но речь о результате выражения.
в типизированном языке результатом будет комбинация тип+данные.
если ты начинаешь руками кастить результат, то это уже читерство и отсутствует в условиях.
чтоб сложить придется кастить в число. если ты не делаешь руками каст назад то в результате будет число. обратно в символ оно волшебным образом не превратится, но если с натяжкой, то будем считать что и '2' корректно.
судя по выводу, линковка производилась не с той библиотекой, для которой заголовочные файлы.
а подгонять бинари левой либы под другие хидеры - плохой план.
быстрый диагноз: кто-то намусорил в системе и не знает что где лежит.
даже если оптимизатор уберет лишние операции, то результатом будет число, а не символ.
в типизированном языке результатом будет комбинация тип+данные.
если ты начинаешь руками кастить результат, то это уже читерство и отсутствует в условиях.
потому что '2' это символ и его код 0x32 (т.е. 50 в десятичной)
https://ideone.com/qnZLvO
а подгонять бинари левой либы под другие хидеры - плохой план.
быстрый диагноз: кто-то намусорил в системе и не знает что где лежит.
теперь твоя прямая обязанность проставлять вердикт достаточно электронно-карательно или нет.