Я читаю «Практика программирования», и в нем говорится, что стандартный цикл для прогулки по списку в C:
for (p=list;p != NULL;p=p->next)
...
Мой вопрос: как работает NULL?Я сам использовал это в программах, но никогда не задумывался над тем, как это работает.
Полагаю, NULL должен быть стандартным макросом, определенным в самом простом заголовочном файле, таком как stdio.h, но как он определяется как?Это так?
#define MACRO 0
вот как работает 0, когда мы сравниваем указатель с 0. Этот 0 может быть действительным адресом памяти 0, тогда как мы можем отличить, чтобы сказать, что мы на самом деле имеем в виду неверный адрес, то естьуказатель имеет логическое пустое значение?
Спасибо,