title: Why do most enum values end with BUTT specifier in declaration?
body: <p>While reading most of the open-source code, I frequently see that <code>enum</code> values end with a <code>_BUTT</code> specifier? It may sound naive, but is there any significance for such coding style?</p>
  
  <p>Example 1:</p>
  
  <pre><code>typedef enum __nvp1114a_samplerate {
          NVP1114A_8000,
          NVP1114A_16000,
          NVP1114A_32000,
          NVP1114A_44100,
          NVP1114A_48000,
          NVP1114A_BUTT
  } nvp1114a_samplerate;
  </code></pre>
  
  <p>Example 2:</p>
  
  <pre><code>typedef enum hiVIDEO_NORM_E
  {
      VIDEO_ENCODING_MODE_PAL=0,
      VIDEO_ENCODING_MODE_NTSC,
      VIDEO_ENCODING_MODE_AUTO,
      VIDEO_ENCODING_MODE_BUTT
  } VIDEO_NORM_E;
  </code></pre>