
05.11.2007, 02:41
|
|
Участник форума
Регистрация: 17.05.2007
Сообщений: 220
Провел на форуме: 3013539
Репутация:
441
|
|
кто-нибудь объясните пару моментов(речь идёт про указатели):
1)если я пременяю функцию:
delet p;
то что происходит?
у меня при выводе значений р и *р (cout<<p<<" "<<p; ) значение переменной *р становится равным 0, а значение(адрес) р остаётся неизменным (каким был до delete p; )
после чего я могу благополучно написать *р=13; и никакой ошибки не выдаётся; хотя в учебнике написано что адресс и значание указателя после применения ф-ции delete становится неопределённым...
2)как правильно использовать переменную NULL(случай когда динамическая память заполняется и указателю присваивается значение 0 или NULL мне известен)
опять же в учебнике написано, что по-хорошему после применения ф-ции delete надо присвоить перменной значение NULL, чтобы избежать проблемы с зависшими указателями. Как это происхдит?
вот ещё интересный скрин (код и процесс выполнения программы):

|
|
|