<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Adding breakpoints</title>
<link rel="stylesheet" type="text/css" href="../help.css">
<script language="JavaScript">
function changeSize(theImage,wd,ht) {
	wdth=parseInt(theImage.style.width); hght=parseInt(theImage.style.height);
	if ( !(wdth==(wd*2)) ) {wdth=wd*2; hght=ht*2;}
	else {wdth=wd;hght=ht;}
	theImage.style.width=wdth; theImage.style.height=hght;
}
</script>
</head>

<body>

<div role="main"><h1>Adding breakpoints</h1>

<p>A breakpoint is set on an executable line of a program. If the breakpoint is 
enabled when you debug, the execution suspends before that line of code 
executes.</p>

<p>To add a breakpoint point, double click the marker bar located in the left margin of the 
  <strong>C/C++ Editor</strong> beside the line of code where you want to add a breakpoint. A dot 
  <img alt="Icon: Breakpoint object" src="../images/icon_breakpoint_obj.gif" width="16" height="16"> is 
  displayed in the marker bar and in the <strong>Breakpoints</strong> view, along with the name of the associated file.</p>
  
<p><img src="../images/add_breakpoint.png" alt="Edit view with the cursor highlighting a breakpoint">  </p>
  
<p>For more information on marker bar icons, see <strong>Workbench User Guide &gt; 
Reference &gt; User interface information &gt; Icons and buttons &gt; Editor area 
marker bar</strong>.</p>
<p><img src="../images/ngconcepts.gif" ALT="Related concepts" width="143" height="21">
<br>
<a href="../concepts/cdt_c_over_cdt.htm">C/C++ Development perspective</a><br>
</p>
<p><img src="../images/ngtasks.gif" ALT="Related tasks" width="143" height="21">
<br>
<a href="cdt_o_brkpnts_watch.htm">Using breakpoints and watchpoints</a></p>
<p><img src="../images/ngref.gif" ALT="Related reference" width="143" height="21">
<br>
<a href="../reference/cdt_o_run_dbg_pages.htm">Run and Debug dialog box</a></p>
<img src="../images/ng00_04a.gif" ALT="IBM Copyright Statement" > 

</div></body>

</html>