Size: a a a

2020 March 20

JC

Julian =) Coffee in archlinux_ru
На ардуине у тебя нет операционной системы, которая делает эти проверки.
Делает ли это твою программу безопаснее?
источник

U

User in archlinux_ru
Julian =) Coffee
На ардуине у тебя нет операционной системы, которая делает эти проверки.
Делает ли это твою программу безопаснее?
Да, я понял, это и спрашивал
источник

JC

Julian =) Coffee in archlinux_ru
лол
источник

JC

Julian =) Coffee in archlinux_ru
Переслано от Julian =) Coffee
источник

JC

Julian =) Coffee in archlinux_ru
Как думаешь, эта программа компилируется через gcc?
источник

U

User in archlinux_ru
Julian =) Coffee
Переслано от Julian =) Coffee
Астанавись. Я боюсь прокручивать эту программу у себя в голове, мало ли ща за пределы памяти уйду
источник

U

User in archlinux_ru
Julian =) Coffee
Как думаешь, эта программа компилируется через gcc?
(Ну return бы добавить, а там посмотрим)
источник

U

User in archlinux_ru
Хотя скорее всего если правильно изъебнуться, то можно заставить компилить без return
источник

U

User in archlinux_ru
Но становится страшно, когда функция должна что-то возвращать, а у тебя в регистрах хуй пойми что лежит
источник

JC

Julian =) Coffee in archlinux_ru
Ну смотри, в сишке все что в одинарных скобочках это символ.
Каждый символ это int.
8$ это не валидный символ, поэтому компилятор си отбрасывает $ и получает просто '8'. Это 56.
В итоге мы получаем char *s = 112. Неявно кастуем это к указателю и получаем строку по адресу 112 в памяти.
Потом puts это делает сисвызов, ложит 112 на стэк как указатель на строку, которую надо вывести.
Ядро смотрит, что такого указателя программе не выдали роняет ее с SEGFAULT
источник

JC

Julian =) Coffee in archlinux_ru
А теперь скажи мне что-то о том, что компилятор не дает выстрелить себе в ногу.
источник

U

User in archlinux_ru
Ты вот скажи, я правильно понял, что отсутствие return - это часть плана?
источник

JC

Julian =) Coffee in archlinux_ru
не
источник

JC

Julian =) Coffee in archlinux_ru
ретурн в мейне опционален
источник

JC

Julian =) Coffee in archlinux_ru
Компилятор сам подставит 0
источник

U

User in archlinux_ru
Julian =) Coffee
ретурн в мейне опционален
Чё
источник

U

User in archlinux_ru
Как так
источник

U

User in archlinux_ru
Завтра на компе проверю
источник

U

User in archlinux_ru
Как можно его заставить работать
источник

JC

Julian =) Coffee in archlinux_ru
Ту программу нельзя заставить работать, там полный треш
источник