NULL (в C и C++)

NULL в языках программирования Си и C++ означает нулевой указатель, то есть указатель, не указывающий ни на какой адрес памяти. Чаще всего это значение присваивается только что созданной переменной-указателю (в некоторых случаях — автоматически), кроме того, его присваивают указателю после освобождения памяти, на которую он ссылался.

В зависимости от реализации, попытка обращения по указателю NULL в программе может приводить либо к обращению в память, не предназначенную для использования программой (в этом случае при чтении будет считан «мусор», а при записи — значение будет записано в область памяти, не принадлежащую программе), либо к ошибке времени выполнения (если в системе реализована защита памяти и доступ в невыделенную процессу память блокируется). Известное пользователям Windows сообщение «Общая ошибка защиты» (англ. «General protection fault», «GPF») выдаётся как раз в тех случаях, когда программа обращается в память по неверному или неинициализированному указателю.

Программистам на C++ рекомендуют инициализировать указатели нулём, вместо NULL, однако это уменьшает читаемость исходного кода.

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home