Я цитирую слова "Язык программирования C" Кернигана и Ричи:
Любой указатель может быть осмысленно сопоставлен для равенства или неравенства с нулем. Но поведение undefined для арифметики или сравнения с указателями, которые не указывают на членов одного и того же массива. (Есть одно исключение: адрес первого элемента за конец массива может использоваться в арифметике указателя.)
Означает ли это, что я не могу полагаться на ==
для проверки равенства разных указателей? Каковы ситуации, в которых это сравнение приводит к неправильному результату?