Простой ответ: NO, YOU CAN'T SUBTRACT A NULL FROM ANOTHER NULL.
Я думаю, вы неправильно поняли это определение:
NULL четко определен как: целочисленное константное выражение с
значение 0 или такое выражение, приведенное к типу void, называется нулевым
константа указателя. Так что я думал, что мы можем вычесть один 0 из
еще 0.
Теперь, давайте пока возьмем определение GOOGLE NULL
Нуль означает, что не имеет значения ; другими словами, ноль равен нулю, как если бы вы
добавьте в кофе так мало сахара, что он станет практически нулевым. Ноль
также означает недействительным. От латинского nullus,
значение «не любой», бедный, бессильный ноль на самом деле вообще не существует.
Ясно, что в нем говорится, что null не имеет значения . Думайте об этом, как вы пытаетесь ничего не вычитать из ничего .
Теперь давайте возьмем это другими словами, ноль равен нулю (если и только если определено значение), вы можете вычесть это наверняка (но не можете сделать что-то вроде char * ab = NULL, char * aa = NULL и затем выполнить вычитание как ab-aa все еще незаконно)
Но никто не может на самом деле предсказать значение для нуля, поэтому, когда вы не можете получить значение, вы не можете выполнить какую-либо операцию (например, вычитание, сложение и т. Д.) Над этим.