Size: a a a

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

2020 September 30

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Wikipedia
Неопределённое поведение
Неопределённое поведение (англ. undefined behaviour, в ряде источников непредсказуемое поведение ) — свойство некоторых языков программирования (наиболее заметно в Си), программных библиотек и аппаратного обеспечения в определённых маргинальных ситуациях выдавать результат, зависящий от реализации компилятора (библиотеки, микросхемы) и случайных факторов наподобие состояния памяти или сработавшего прерывания. Другими словами, спецификация не определяет поведение языка (библиотеки, микросхемы) в любых возможных ситуациях, а говорит: «при условии А результат операции Б не определён». Допускать такую ситуацию в программе считается ошибкой; даже если на некотором компиляторе программа успешно выполняется, она не будет кроссплатформенной и может отказать на другой машине, в другой ОС или при других настройках компилятора.
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
Max
Возникает после нажатия "Изменить"
ну ты должен знать какие ты папки включаешь для каких конфигураций
соответственно их и пропиши для конфигураций
мне кажется в гугле есть мануал на мсдн
источник

OS

Oleksandr Shaposhnik... in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
Вообще, есть calloc вроде, он прям это делает
new int[N]()
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
Andrew
Смысле. Вполне дефайнд. Вернет то, что лежит в памяти когда её выделили
на одной платформе, а на другой все взорвется как в боевиках 80х
источник

A

Andrew in IT KPI C/C++ ХВ (не UB)
Ruslan Neshta
на одной платформе, а на другой все взорвется как в боевиках 80х
Интересно какой
источник

A

Andrew in IT KPI C/C++ ХВ (не UB)
Где та самая платформа, где обращение в выделеную память всо сломает
источник

OS

Oleksandr Shaposhnik... in IT KPI C/C++ ХВ (не UB)
Andrew
Интересно какой
Вопрос некорректный
источник

A

Andrew in IT KPI C/C++ ХВ (не UB)
Шото подозреваю, что такая не существует
источник

JC

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

JC

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

JC

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

OS

Oleksandr Shaposhnik... in IT KPI C/C++ ХВ (не UB)
А может и ничего не делать
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Ну да
источник

V

Vsevolod in IT KPI C/C++ ХВ (не UB)
std::array<std::array<int, 10>, 10> arr;
std::cout << arr[4][4] << std::endl; // какая-то херобора
источник

V

Vsevolod in IT KPI C/C++ ХВ (не UB)
std::array<std::array<int, 10>, 10> arr{{}};
   std::cout << arr[4][4] << std::endl; // 0
источник

OS

Oleksandr Shaposhnik... in IT KPI C/C++ ХВ (не UB)
Vsevolod
std::array<std::array<int, 10>, 10> arr{{}};
   std::cout << arr[4][4] << std::endl; // 0
Дефолтная инициализация
источник

OS

Oleksandr Shaposhnik... in IT KPI C/C++ ХВ (не UB)
Для int это 0
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
Andrew
Шото подозреваю, что такая не существует
ну погугли если тебе так интересно
помню ещё в каком-то видосе про стринги это докладчик явно говорил - обращение к неинициализированной памяти на некоторых платформах вызывает крешы
источник

V

Vsevolod in IT KPI C/C++ ХВ (не UB)
Oleksandr Shaposhnikov
Дефолтная инициализация
ну да, т.е. по идеи всё норм, главное не забыть дописать {}
источник

A

András in IT KPI C/C++ ХВ (не UB)
який самий повільний спосіб зчитати число з консолі?
источник