title: How to uglify or minify C code
body: <p>Using <code>gcc</code> I can remove comments and unwanted blank lines, but I want to reduce a size of file also, is there any options in <code>gcc</code> or any other tool to do so</p>
  
  <p>At present I do like this</p>
  
  <pre><code>gcc -fpreprocessed -dD -E  -P source_code.c &gt; source_code_comments_removed.c 
  </code></pre>
  
  <p>Here is scenario assume that this is my source_code.c</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  main()
  { 
        // declar variable i
        int i=0;
  
        /* multiline comment
        for loop
        demo stuff
        */
        for(i=1; i&lt;=5; i++)
        {
              // just print something
              printf("Hello %d \n",i);
        }
  
  }
  </code></pre>
  
  <p>I want to minify like this, removed comments and blank lines </p>
  
  <pre><code>#include &lt;stdio.h&gt;
  main(){int i=0;for(i=1; i&lt;=5; i++){printf("Hello %d \n",i);}}
  </code></pre>
  
  <p><strong>Note :</strong> I am on <strong>Linux</strong> please don't suggest any windows based solution</p>