title: c++-mode-hook and c-mode-hook appears to run twice
body: <p>I use this command to start emacs</p>
  
  <pre><code>$ emacs -Q c-mode-test.el
  </code></pre>
  
  <p>then I use C-xC-e to eval every line </p>
  
  <pre><code>(require 'cc-mode)
  
  (add-hook 'c-mode-common-hook '(lambda () (print "hello")))
  
  (add-hook 'c-mode-hook '(lambda () (print "hello c")))
  
  (c-mode)
  </code></pre>
  
  <p>after this, the minibuffer shows</p>
  
  <pre><code>"hello"
  
  "hello c"
  
  "hello c"
  nil
  </code></pre>
  
  <p>and c++-mode-hook run just the same</p>
  
  <pre><code>(add-hook 'c++-mode-hook '(lambda () (print "hello c++")))
  
  (c++-mode)
  </code></pre>
  
  <p>the minibuffer</p>
  
  <pre><code>"hello"
  
  "hello c++"
  
  "hello c++"
  nil
  </code></pre>
  
  <p>why it run twice or something wrong.</p>