Không phải do dev-c++ cùi bắp, mà do cách code của bạn như vậy là không được phép. Bạn không cấp phát cho con trỏ, thì temp vẫn đang trỏ đến chỗ nào đó chưa biết, bạn thay đổi *temp về lý thuyết là nguy hiểm.
Bạn gán con trỏ bằng NULL thì tất nhiên là nó càng không chạy được, vì lúc đó làm gì có cái gì là *temp?
(tất nhiên dev-c++ cùi thật, nhưng vấn đề không phải ở đó)