c++ - Some Problem with exception
- Neo (11/11) Oct 13 2002 hi
- Walter (4/15) Oct 14 2002 What happens when you run it?
- Jan Knepper (5/16) Oct 14 2002 I think VC might use try and catch for language exceptions as well as re...
- Larry Brasfield (13/26) Oct 14 2002 According to the C++ standard, (and assuming that
hi i tried simple code char *c= NULL; try{ *c= 10; } catch(...){ coutt<<"NULL POINTER ACCESS"; } but this doesn't work as expected. same code works in VC++. i have compiled it with -Ae option.
Oct 13 2002
What happens when you run it? "Neo" <newneo2 yahoo.com> wrote in message news:aoekhu$di0$1 digitaldaemon.com...hi i tried simple code char *c= NULL; try{ *c= 10; } catch(...){ coutt<<"NULL POINTER ACCESS"; } but this doesn't work as expected. same code works in VC++. i havecompiledit with -Ae option.
Oct 14 2002
I think VC might use try and catch for language exceptions as well as regular (hardware) exceptions. Basically there is nothing wrong with the code, except when try/catch would handle the hardware exceptions too. Than *c = 10 would throw an exception. Neo wrote:hi i tried simple code char *c= NULL; try{ *c= 10; } catch(...){ coutt<<"NULL POINTER ACCESS"; } but this doesn't work as expected. same code works in VC++. i have compiled it with -Ae option.
Oct 14 2002
In article <aoekhu$di0$1 digitaldaemon.com>, Neo (newneo2 yahoo.com) says...hi i tried simple code char *c= NULL; try{ *c= 10; } catch(...){ coutt<<"NULL POINTER ACCESS"; } but this doesn't work as expected.According to the C++ standard, (and assuming that 'NULL' expands to '0'), that behavior of that code is undefined. That means there is no correct expectation other than "anything can happen".same code works in VC++.The fact that your unduly narrow expectation was met in no way implies a fault in DMC++. Since any behavior is allowed, there cannot be any incorrect result. -- -Larry Brasfield (address munged, s/sn/h/ to reply)
Oct 14 2002