### Set Address

Use the Set Address choice to set a breakpoint at a specific address. When the instruction at the specified address is executed, the program will stop.

When you click on Set Address, an Address Breakpoint dialog opens. In the Address or Expression entry field, you can type the address, or an expression that evaluates to a valid execution address.

A valid execution address is the beginning address of a machine language instruction. For Intel 32-bit code, you must enter the address in flat format. For 16-bit code (debuggee on OS/2 only), you can enter it in either flat or segmented format.

For example, to set an address breakpoint for the address 0x000A1FCC, type `0X000A1FCC` or `A1FCC`. To set the segmented address `0x0060:1F7C`, type `0X0060:1F7C` or `60:1F7C`.

C++: Expressions that evaluate to an address are C++ expressions such as:

- An expression containing an address, an addition or subtraction operator, and a value. For example: `A1FCC+17`.
- A pointer-to-function that points to a valid execution address. For example, after you have stepped over the assignment to `ptf1` in the following program:

           void howdy() { printf("Hello there\n"); }
           void main() {
             void (*ptf1) ();
             ptf1=howdy;
             // ...
           }

  you could enter `ptf1` as the expression, and the breakpoint would be set on entry to the function `howdy()`. (Before you have stepped over the assignment, `ptf1` does not point to a valid function and so you could not use it in an address expression here.)

More information is available on the following entry field items:

- Thread
- Frequency

Supported C++ expressions