Size: a a a

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

2020 June 18

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
В плюсах разве малоки компилятся?
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
а что по твоему в плюсах под капотом new?
источник

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
Конструктор для массива чаров используй
источник

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
а что по твоему в плюсах под капотом new?
Имею ввиду явно
источник

AP

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

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
Либо к типу char приведи
источник

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
компилит, че ж нет
А, вспомнил, кастануть явно тип надо
источник

АН

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

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

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

И по случайности, оно пока что работает.
Но оно не должно работать и не должно компилироваться.
Сорян за реплай. Хотел написать что я проверяю можно ли использовать сишный код в плюсах. Я просто ищу наличие доказательств тому, что нельзя и если не найду, буду считать что можно.

Если сишный код компилируется и запускается сишным компилятором, но не запускается плюсовым, я считаю это доказательством того, что сишный код придётся менять. Но в случае если сишный код не будет скомпилирован в mingw или майкрософтовском компиляторе с какими-нибудь флагами дополнительных проверок, то это считаю доказательством того, что сишный код отстойно написан и не годится для теста.

Примерно такие условия. Кстати, вы можете сказать своё мнение, составленное на основании опыта, может ли нормальный сишный код работать в плюсах без изменений. Потому что я си языки не знаю, только решил поиграться, что бы выяснить стоит ли тратить время на изучение.
источник

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
Yevhen Salatskiy
А, вспомнил, кастануть явно тип надо
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
я в плюсах не эксперт(
источник

AP

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

AP

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

AP

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

YS

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

Если сишный код компилируется и запускается сишным компилятором, но не запускается плюсовым, я считаю это доказательством того, что сишный код придётся менять. Но в случае если сишный код не будет скомпилирован в mingw или майкрософтовском компиляторе с какими-нибудь флагами дополнительных проверок, то это считаю доказательством того, что сишный код отстойно написан и не годится для теста.

Примерно такие условия. Кстати, вы можете сказать своё мнение, составленное на основании опыта, может ли нормальный сишный код работать в плюсах без изменений. Потому что я си языки не знаю, только решил поиграться, что бы выяснить стоит ли тратить время на изучение.
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
в принципе вопрос веселый, но особо не нужный
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
ну потому шо малок не страшно
источник

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
Короткий ответ, как использовать куски кода си на плюсах
источник

YS

Yevhen Salatskiy in IT KPI C/C++ ХВ (не UB)
Можешь ещё на луа скрипты написать, а потом вм луа как библиотеку сишную подключить
источник

АН

Авроамэриканец Начрэ... in IT KPI C/C++ ХВ (не UB)
Yevhen Salatskiy
Можешь ещё на луа скрипты написать, а потом вм луа как библиотеку сишную подключить
Спасибо, сейчас прочитаю. На счёт lua не понял. Я хочу написать игрушечный язык и мне хочется использовать для этого си, потому что нравится работа с указателями, а в языке хочу фичу, что бы было автоматическое управление памятью, но была возможность и ручного управления, через выделение. Типо если выделил, то сам и контроллируй и помечать это как потенциально опасное действие.

Но так же я хочу использовать плюсы из-за ООП, для удобного управления сложными структурами, но не хочу в плюсах использовать сишный подход. Хочу как-то отделить сишный код от плюсового. Кажется, extern единственный нормальный вариант, потому что линковать объектные файлы сишки к плюсам вроде бы нельзя
источник

JC

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

Но так же я хочу использовать плюсы из-за ООП, для удобного управления сложными структурами, но не хочу в плюсах использовать сишный подход. Хочу как-то отделить сишный код от плюсового. Кажется, extern единственный нормальный вариант, потому что линковать объектные файлы сишки к плюсам вроде бы нельзя
А потом майкрософт говорит, что у них 70% уязвимостей безопасности связано с управлением памяти🌚

а чем указатели так нравятся?
источник