Sun, 1st Nov 2015, 01:38 A hint about debugging.
I just responded to a student who is having a tough time finding a bug, and he says he is setting breakpoints, and wanted to know if I have any advice. I sent him the following response: > It sounds like you have been doing *almost* everything I would hope you to do. > What I suggest is the following: > > 1. Draw the figure consisting of the two linked lists consisting of the > original nodes that your program is about to work on. You will need to > set the breakpoints appropriately to find out why the final version of > those two lists are not correct. > > Write down the actual addresses inside the locations (in addition to > showing the pointers). > > 2. Set a breakpoint, and go. What do you expect the three linked lists > will look like when you reach the breakpoint. Examine all the locations > to see if that is what is there. If yes, set the next breakpoint. If no, > back up where you set the breakpoint and repeat. > > The idea is to try to isolate and thereby identify the instruction that is > not doing what you think it is doing. You may have to single step to find > this instruction. But if the result is not what you think it should be, > there is an instruction you think is doing one thing but it is really doing > something else. > By the way, breakpoints may not be enough. You may have to "single step + > examine" to find the misbehaving instruction. Good luck. Yale Patt