title: Are `typedef` and `struct` inside of a function standard in C?
body: <p>I used some code like this:</p>
  
  <pre><code>void A()
  {
      typedef struct B B;
      struct B
      {
  
      };
  
      B b;
  };
  </code></pre>
  
  <p><code>typedef</code> and <code>struct</code> definition inside a function. It compiled with Clang, but I want to know (1) whether they are part of standard or not. And about (2) whether they are limited to be recognized in function scope only. </p>