Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > c0565a538108d61054252dcab5262c00 > files > 50

arduino-doc-0021-3.fc14.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
  <title>Arduino - Define </title>
  <link rel='stylesheet' href='arduino.css' type='text/css' />
  <meta name="verify-v1" content="TtxFIEJAB6zdJ509wLxjnapQzKAMNm9u0Wj4ho6wxIY=" />
</head>
<body>
<div id="page">
<!--PageHeaderFmt-->
<div id="pageheader">
  <div class="title"><a href="http://www.arduino.cc"/>Arduino</a></div>
  <div class="search">
    <!-- SiteSearch Google -->
    <FORM method=GET action="http://www.google.com/search">
    <input type=hidden name=ie value=UTF-8>
    <input type=hidden name=oe value=UTF-8>
    <INPUT TYPE=text name=q size=25 maxlength=255 value="">
    <INPUT type=submit name=btnG VALUE="search">
    <input type=hidden name=domains value="http://www.arduino.cc/">
    <input type=hidden name=sitesearch value="http://www.arduino.cc/">
    </FORM>
    <!-- SiteSearch Google -->
  </div>
</div>
<!--/PageHeaderFmt-->
<!--PageLeftFmt-->
<div id="pagenav" style="text-align: right">
  <div style="float: left;">
  <p><a class='wikilink' href='http://arduino.cc/en/Main/Buy'>Buy</a>
|
<a class='wikilink' href='http://arduino.cc/en/Main/Software'>Download</a>
|
<a class='wikilink' href='Guide_index.html'>Getting Started</a>
|
<a class='wikilink' href='http://arduino.cc/en/Tutorial/HomePage'>Learning</a>
|
<a class='wikilink' href='index.html'>Reference</a>
|
<a class='wikilink' href='http://arduino.cc/en/Main/Hardware'>Hardware</a>
|
<a class='wikilink' href='FAQ.html'>FAQ</a>
</p>
<p class='vspace'></p>

  </div>
  <a class="urllink" href="http://www.arduino.cc/blog/" rel="nofollow">Blog &raquo;</a> |
  <a class="urllink" href="http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl" rel="nofollow">Forum &raquo;</a> |
  <a class="urllink" href="http://www.arduino.cc/playground/" rel="nofollow">Playground &raquo;</a>
</div>
<!--/PageLeftFmt-->
<div id="pagetext">
<!--PageText-->
<div id='wikitext'>
<p><strong>Reference</strong> &nbsp;  <a class='wikilink' href='index.html'>Language</a> | <a class='wikilink' href='Libraries.html'>Libraries</a> | <a class='wikilink' href='Comparison.html'>Comparison</a> | <a class='wikilink' href='Changes.html'>Changes</a>
</p>
<p class='vspace'></p><h2>Define</h2>
<p><code>#define</code> is a useful C component that allows the programmer to give a name to a constant value before the program is compiled. Defined constants in arduino don't take up any program memory space on the chip. The compiler will replace references to these constants with the defined value at compile time.
</p>
<p class='vspace'></p><p>This can have some unwanted side effects though, if for example, a constant name that had been #defined is included in some other constant or variable name. In that case the text would be replaced by the #defined number (or text).
</p>
<p class='vspace'></p><p>In general, the <em><a class='wikilink' href='Const.html'>const</a></em> keyword is preferred for defining constants and should be used instead of #define.
</p>
<p class='vspace'></p><p>Arduino defines have the same syntax as C defines:
</p>
<p class='vspace'></p><h4>Syntax</h4>
<p><code>#define constantName value</code>
</p>
<p class='vspace'></p><p>Note that the # is necessary. 
</p>
<p class='vspace'></p><h4>Example</h4>
<pre>#define ledPin 3
// The compiler will replace any mention of ledPin with the value 3 at compile time.
</pre>
<p class='vspace'></p><h4>Tip</h4>
<p>There is no semicolon after the #define statement. If you include one, the compiler will throw cryptic errors further down the page.
</p>
<p class='vspace'></p><pre>#define ledPin 3;    // this is an error 

</pre>
<p class='vspace'></p><p>Similarly, including an equal sign after the #define statement will also generate a cryptic compiler error further down the page.
</p>
<p class='vspace'></p><pre>#define ledPin  = 3  // this is also an error 

</pre>
<p class='vspace'></p><h4>See</h4>
<ul><li><a class='wikilink' href='Const.html'>const</a>
</li><li><a class='wikilink' href='IntegerConstants.html'>Constants</a>
</li></ul><p class='vspace'></p><p><a class='wikilink' href='index.html'>Reference Home</a>
</p>
<p class='vspace'></p><p><em>Corrections, suggestions, and new documentation should be posted to the <a class='urllink' href='http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?board=swbugs' rel='nofollow'>Forum</a>.</em>
</p>
<p class='vspace'></p><p>The text of the Arduino reference is licensed under a
<a class='urllink' href='http://creativecommons.org/licenses/by-sa/3.0/' rel='nofollow'>Creative Commons Attribution-ShareAlike 3.0 License</a>.  Code samples in the reference are released into the public domain.
</p>
</div>


<!-- AddThis Button BEGIN -->
<script type="text/javascript">var addthis_language = "en";
</script>
<div class="addthis_container addthis_toolbox addthis_default_style" addthis:url="Define" addthis:title="Arduino Wiki English">
<a href="http://www.addthis.com/bookmark.php?v=250&amp;username=arduinoteam" class="addthis_button_compact">Share</a><span 
class="addthis_separator">|</span><a class="addthis_button_email"></a><a class="addthis_button_favorites"></a><a class="addthis_button_print"></a><a 
class="addthis_button_facebook"></a><a class="addthis_button_twitter"></a><script type="text/javascript" 
src="http://s7.addthis.com/js/250/addthis_widget.js#username=arduinoteam"></script></div>
<!-- AddThis Button END -->

</div>
<!--PageFooterFmt-->
<div id="pagefooter">
  <a href=.html'#'>Edit Page</a> | <a href='#'>Page History</a> | <a href='#' target='_blank'>Printable View</a> | <a href='http://arduino.cc/en/Site/AllRecentChanges'>All Recent Site Changes</a>
</div>
<!--/PageFooterFmt-->
</div>
</body>
</html>