| <html lang="en"> | 
 | <head> | 
 | <title>Predefined Macros - The C Preprocessor</title> | 
 | <meta http-equiv="Content-Type" content="text/html"> | 
 | <meta name="description" content="The C Preprocessor"> | 
 | <meta name="generator" content="makeinfo 4.13"> | 
 | <link title="Top" rel="start" href="index.html#Top"> | 
 | <link rel="up" href="Macros.html#Macros" title="Macros"> | 
 | <link rel="prev" href="Variadic-Macros.html#Variadic-Macros" title="Variadic Macros"> | 
 | <link rel="next" href="Undefining-and-Redefining-Macros.html#Undefining-and-Redefining-Macros" title="Undefining and Redefining Macros"> | 
 | <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> | 
 | <!-- | 
 | Copyright (C) 1987, 1989, 1991, 1992, 1993, 1994, 1995, 1996, | 
 | 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | 
 | 2008, 2009, 2010 | 
 | Free Software Foundation, Inc. | 
 |  | 
 | Permission is granted to copy, distribute and/or modify this document | 
 | under the terms of the GNU Free Documentation License, Version 1.2 or | 
 | any later version published by the Free Software Foundation.  A copy of | 
 | the license is included in the | 
 | section entitled ``GNU Free Documentation License''. | 
 |  | 
 | This manual contains no Invariant Sections.  The Front-Cover Texts are | 
 | (a) (see below), and the Back-Cover Texts are (b) (see below). | 
 |  | 
 | (a) The FSF's Front-Cover Text is: | 
 |  | 
 |      A GNU Manual | 
 |  | 
 | (b) The FSF's Back-Cover Text is: | 
 |  | 
 |      You have freedom to copy and modify this GNU Manual, like GNU | 
 |      software.  Copies published by the Free Software Foundation raise | 
 |      funds for GNU development. | 
 | --> | 
 | <meta http-equiv="Content-Style-Type" content="text/css"> | 
 | <style type="text/css"><!-- | 
 |   pre.display { font-family:inherit } | 
 |   pre.format  { font-family:inherit } | 
 |   pre.smalldisplay { font-family:inherit; font-size:smaller } | 
 |   pre.smallformat  { font-family:inherit; font-size:smaller } | 
 |   pre.smallexample { font-size:smaller } | 
 |   pre.smalllisp    { font-size:smaller } | 
 |   span.sc    { font-variant:small-caps } | 
 |   span.roman { font-family:serif; font-weight:normal; }  | 
 |   span.sansserif { font-family:sans-serif; font-weight:normal; }  | 
 | --></style> | 
 | <link rel="stylesheet" type="text/css" href="../cs.css"> | 
 | </head> | 
 | <body> | 
 | <div class="node"> | 
 | <a name="Predefined-Macros"></a> | 
 | <p> | 
 | Next: <a rel="next" accesskey="n" href="Undefining-and-Redefining-Macros.html#Undefining-and-Redefining-Macros">Undefining and Redefining Macros</a>, | 
 | Previous: <a rel="previous" accesskey="p" href="Variadic-Macros.html#Variadic-Macros">Variadic Macros</a>, | 
 | Up: <a rel="up" accesskey="u" href="Macros.html#Macros">Macros</a> | 
 | <hr> | 
 | </div> | 
 |  | 
 | <h3 class="section">3.7 Predefined Macros</h3> | 
 |  | 
 | <p><a name="index-predefined-macros-59"></a>Several object-like macros are predefined; you use them without | 
 | supplying their definitions.  They fall into three classes: standard, | 
 | common, and system-specific. | 
 |  | 
 |    <p>In C++, there is a fourth category, the named operators.  They act like | 
 | predefined macros, but you cannot undefine them. | 
 |  | 
 | <ul class="menu"> | 
 | <li><a accesskey="1" href="Standard-Predefined-Macros.html#Standard-Predefined-Macros">Standard Predefined Macros</a> | 
 | <li><a accesskey="2" href="Common-Predefined-Macros.html#Common-Predefined-Macros">Common Predefined Macros</a> | 
 | <li><a accesskey="3" href="System_002dspecific-Predefined-Macros.html#System_002dspecific-Predefined-Macros">System-specific Predefined Macros</a> | 
 | <li><a accesskey="4" href="C_002b_002b-Named-Operators.html#C_002b_002b-Named-Operators">C++ Named Operators</a> | 
 | </ul> | 
 |  | 
 |    </body></html> | 
 |  |