summaryrefslogtreecommitdiff
path: root/devdocs/gcc~13/empty-structures.html
blob: 2f702560d04dfaf7487ea17328da556350c08873 (plain)
1
2
3
4
5
6
7
8
<div class="section-level-extent" id="Empty-Structures"> <div class="nav-panel"> <p> Next: <a href="variable-length" accesskey="n" rel="next">Arrays of Variable Length</a>, Previous: <a href="zero-length" accesskey="p" rel="prev">Arrays of Length Zero</a>, Up: <a href="c-extensions" accesskey="u" rel="up">Extensions to the C Language Family</a> [<a href="index#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="indices" title="Index" rel="index">Index</a>]</p> </div>  <h1 class="section" id="Structures-with-No-Members"><span>6.19 Structures with No Members<a class="copiable-link" href="#Structures-with-No-Members"> ¶</a></span></h1>   <p>GCC permits a C structure to have no members: </p> <div class="example smallexample"> <pre class="example-preformatted" data-language="cpp">struct empty {
};</pre>
</div> <p>The structure has size zero. In C++, empty structures are part of the language. G++ treats empty structures as if they had a single member of type <code class="code">char</code>. </p> </div><div class="_attribution">
  <p class="_attribution-p">
    &copy; Free Software Foundation<br>Licensed under the GNU Free Documentation License, Version 1.3.<br>
    <a href="https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/Empty-Structures.html" class="_attribution-link">https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/Empty-Structures.html</a>
  </p>
</div>