Size: a a a

IT KPI C/C++ ХВ (не UB)

2020 June 18

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Авроамэриканец Начрэл
В си строка - это массив char
Окей, ты в ячейку масива пытаешься массив засунуть. Так понятнее?
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
""
это не символ(char)
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
это
char const*
источник

АН

Авроамэриканец Начрэ... in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
Окей, ты в ячейку масива пытаешься массив засунуть. Так понятнее?
Не имеет значения что я делаю. Вопрос в том, почему в си это работает, а в плюсах нет и есть ли возможность использовать сишный код в плюсовом без изменений.
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Авроамэриканец Начрэл
Не имеет значения что я делаю. Вопрос в том, почему в си это работает, а в плюсах нет и есть ли возможность использовать сишный код в плюсовом без изменений.
Оно не работает
источник

АН

Авроамэриканец Начрэ... in IT KPI C/C++ ХВ (не UB)
У меня компилируется. Значит работает
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Один компилятор стреляет тебе в ногу и компилирует, другой отказывается стрелять тебе в ногу.
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
компилируется - это еще не работает
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
это просто у тебя создался бинарник который хуй знает че делать будет
источник

АН

Авроамэриканец Начрэ... in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
компилируется - это еще не работает
Запускается, выводит текст
источник

АН

Авроамэриканец Начрэ... in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
Один компилятор стреляет тебе в ногу и компилирует, другой отказывается стрелять тебе в ногу.
Я об этом тоже думал. Можешь назвать компилятор под винду, в котором это не скомпилируется?
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
Авроамэриканец Начрэл
Запускается, выводит текст
gcc -Wall -Werror -Wextra main.c
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Авроамэриканец Начрэл
Я об этом тоже думал. Можешь назвать компилятор под винду, в котором это не скомпилируется?
любой с -Werror
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
дело не в компиляторе
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
а в флагах
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
Авроамэриканец Начрэл
Запускается, выводит текст
ub тоже текст выводит, но работой я б это не назвал
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Авроамэриканец Начрэл
Я об этом тоже думал. Можешь назвать компилятор под винду, в котором это не скомпилируется?
Знаешь, что такое массив в Си?
Это указатель. (У него даже размера нет). (По-сути число, плюс некая семантика)

В строчке 8 ты в ячейку записываешь указатель (строка это масив чаров, а что такое масив читай выше) . Компилятор думает, что ну тебе же лучше знать и просто кастует этот указатель в число, а потом в чар.

Потом тебе просто везет, что ты это все перезаписываешь 9 и 10 строками.

И по случайности, оно пока что работает.
Но оно не должно работать и не должно компилироваться.
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
а что б компилятор взглянул в глаза правде, и перестал думать шо ты умеешь кодить и знаешь шо тебе надо
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
gcc -Wall -Werror -Wextra main.c
добавь флаги
источник

A

Andrew in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
добавь флаги
Ещё pedantic можно
источник