Проверка на нулевое значение перед использованием указателя

Большинство людей используют такие указатели ...

if ( p != NULL ) {
  DoWhateverWithP();
}

Однако если по какой-либо причине указатель будет нулевым, функция не будет вызываться.

Мой вопрос: может быть, было бы выгоднее просто не проверять NULL? Очевидно, что для систем, критичных для безопасности, это не вариант, но сбой вашей программы в лучах славы более очевиден, чем функция, которая не вызывается, если программа все еще может работать без нее.

Что касается первого вопроса, всегда ли вы проверяете NULL перед использованием указателей?

Во-вторых, представьте, что у вас есть функция, которая принимает указатель в качестве аргумента, и вы используете эту функцию несколько раз для нескольких указателей в вашей программе. Считаете ли вы более полезным тестировать NULL в функции (преимущество заключается в том, что вам не нужно проверять NULL повсеместно) или на указателе перед вызовом функции (преимущество заключается в отсутствии дополнительных затрат при вызове функции? )?

Ответы на вопрос(13)

Ваш ответ на вопрос