Checking Return Values Without Saving Them



 

Often times I will be debugging some code and I want to see a return value of a function; but the value of the function is not saved into a variable for one reason or another. 

In the simplest form you can see this scenario in the following code:

   1:  using System;
   2:  using System.Collections.Generic;
   3:  using System.Linq;
   4:  using System.Text;
   5:   
   6:  namespace Test
   7:  {
   8:      class Program
   9:      {
  10:          static int Foo()
  11:          {
  12:              return 4;
  13:          }
  14:   
  15:          static void Main(string[] args)
  16:          {
  17:              Foo();
  18:          }
  19:      }
  20:  }

If I want to see the value that is returned from the function call to Foo(), I can start by setting a breakpoint on line 18.  Then I go to the menu bar and follow the path 'Debug'->'Windows'->'Registers'.  You can see that the EAX register will contain the return value even though I didn't save the return value to a variable.

registers

Skip to main content