title: Isn't a semicolon (';') needed after a function declaration in C++?
body: <p>I just recently took an intermediate programming test, and one of the questions I got wrong was as follows:</p>
  
  <blockquote>
    <p>A semicolon (';') is not needed after a function declaration.</p>
    
    <p>True or False.</p>
  </blockquote>
  
  <p>I chose "false" (and please correct me if I'm wrong because I feel like I'm going crazy), a function <strong>declaration</strong> is what you write before the definition (at the top of the code) so the compiler knows the function call before even calling it, and a function <strong>definition</strong> is what makes up the function as a whole.</p>
  
  <p>I.e.,</p>
  
  <p><strong>Declaration:</strong></p>
  
  <pre><code>int func();
  </code></pre>
  
  <p><strong>Definition:</strong></p>
  
  <pre><code>int func() {
    return 1;
  }
  </code></pre>
  
  <p>Shouldn't the answer to this be false?</p>