Jawad
Jawad

Reputation: 171

Calling functions while in debug mode in VC++ (Immediate Window)

I wonder can I call functions during the debug mode in VC++? Assume that I have a function to which I set a break point at, when the execution stops at that point during debugging, can I call other functions and see their results before proceeding to the next line of code?

Upvotes: 11

Views: 14181

Answers (2)

devjeetroy
devjeetroy

Reputation: 1945

I believe you can. I think its called Immediate Window. I use VS2010 Ultimate, so I don't know if it exists in your version.

Ctrl + Alt + I

But this only prints output for when the function returns a value. Also, it may not work in some cases.

Let's say you have :

#include <iostream>

int number = 10; //global
void setNumber(int n);

int main()
{
    std::cout<<std::endl; //breakpoint 1 here
    setNumber(4);
    std::cout<<std::endl; //breakpoint 2 here
}

int getNumberSquared()
{
    return number * number;
}

void setNumber(int n)
{
    number = n;
}

when you encounter breakpoint 1, press the shortcut and type:

getNumberSquared()

The output will be 100 After encountering breakpoint 2, do the same thing and the output will be 16

Upvotes: 7

Luchian Grigore
Luchian Grigore

Reputation: 258638

Visual studio has the option to jump to a specific statement (right click + set next statement or ctrl+shift+F10), but be aware when doing so. A function call requires registries to be valid, which will most likely not be if you jump across classes or out of scope.

Upvotes: 1

Related Questions