170 похожих чатов

Ребята, а зачем 1) писать int* ptr = nullptr, ведь

рано или поздно мы написали бы ptr = ...
2) теряю ли я что-то если напишу int* array = malloc(...) вместо int* array = (int*) malloc(...)?

10 ответов

10 просмотров

2) В первом случае не скомпилиться. А ещё так лучше не писать и использовать new

1) ты уверен, что ptr = ... где-то выполниться? Вдруг оно под условием, которое может не выполниться?

Xaker-Xaker Автор вопроса
d7d1cd
1) ты уверен, что ptr = ... где-то выполниться? Вд...

Не понял, если нормальный код написать, то да, выполнится

Xaker Xaker
Не понял, если нормальный код написать, то да, вып...

А потом код поменяют и не выполнится. А в начале указатель никак не инициализирован.

Xaker Xaker
Не понял, если нормальный код написать, то да, вып...

Это страховка от отстрела ноги, в общем. Чтобы можно было хоть как-то проверять, что у нас в указателе лежит не то, что нужно

Xaker-Xaker Автор вопроса
Vladimir
Это страховка от отстрела ноги, в общем. Чтобы мож...

Это бывает проблемно отследить, если программа большая?

Xaker Xaker
Это бывает проблемно отследить, если программа бол...

Что отследить? Что в указатель положат что-то корректное? Зачем создавать себе эти проблемы с отслеживанием, если можно просто инициализировать указатель? В чем проблема написать = nullptr?

Xaker-Xaker Автор вопроса
d7d1cd
Что отследить? Что в указатель положат что-то корр...

Ну, я ещё не сталкивался, чтобы были проблемы с отслеживанием

Xaker Xaker
Ну, я ещё не сталкивался, чтобы были проблемы с от...

С таким подходом не инициализации можно попасть на такую подлянку: int *ptr1, *ptr2; /* много кода */ ptr1 = ptr2; // Вроде все отслежено, в ptr1 присвоено значение. Только упс...

Xaker Xaker
Это бывает проблемно отследить, если программа бол...

Да, это бывает очень проблемно отследить. Примерно по причине того, что это, фактически, не отслеживается, стараются и сырые указатели не использовать

Похожие вопросы

Обсуждают сегодня

А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
какие клиентские датасеты в лазаре умеют объединяться в master-detail? нужно забрать на клиент запись из одной таблицы и выборку из другой связанной один-ко-многим, отредактир...
Igor
19
Подскажите, сейчас что то есть (JS модуль какой-нибудь), что можно использовать для: 1) переваривания javascript codа из html fileа, т.е. разбивки, на переменные, команды, бло...
Iar De
32
Мне интересно, скорее людей здесь используют D, Rust, C/C++ для решения реальных прикладных задач за деньги?)
Evil Satanson
43
кто поможет крякнуть чит? (реверс инжиринг) чтобы разблокировать премиум версию
Mёdkinson Medvezhkin
40
/////////////////////////////////////// TChart / TLineSeries - сохранение данных (текстовый файл) /////////////////////////////////////// добрый день / работа с графиком: 1....
livontiy
14
Подскажите, пожалуйста, как отключить очень сильно доставшие меня подсказки в QT Creator? Они просто мешают видеть то, что я пишу, как гирлянда е.... Просто пишешь одну букву...
Mitchel R
3
Hello I was able to secure a job interview and I need to attend it in 7 hours. I'm so stressed right now, and I also have trust issues so I have this feeling that they may try...
Senator
7
Делал сайт заказчику в 2018г. Прилетела претензия на фотку в примерах работ от copydefend (ооо "фортуна технолоджис") на 36к рублей 🙈 Конторка эта образовалась в 2023 г, и 13...
Alexander Andreev
10
$var = unpack "N"; inet_ntoa($var); Bad arg length for Socket::inet_ntoa, length is 8, should be 4 at а как же тогда надо?
Vyacheslav Olkhovchenkov
6
Карта сайта