如何丑化或缩小 C 代码

How to uglify or minify C code

使用 gcc 我可以删除注释和不需要的空行,但我也想减小文件的大小,gcc 或任何其他工具中是否有任何选项可以这样做

目前我是这样的

gcc -fpreprocessed -dD -E  -P source_code.c > source_code_comments_removed.c 

假设这是我的 source_code.c

#include <stdio.h>
main()
{ 
      // declar variable i
      int i=0;

      /* multiline comment
      for loop
      demo stuff
      */
      for(i=1; i<=5; i++)
      {
            // just print something
            printf("Hello %d \n",i);
      }

}

我想这样缩小,去掉注释和空行

#include <stdio.h>
main(){int i=0;for(i=1; i<=5; i++){printf("Hello %d \n",i);}}

注意:我在Linux请不要建议任何基于windows的解决方案

sed -rb 's/ {6}//g' main.c |
sed -rb 's/\/\/.*$//g' |
tr -d '\n' |
sed -rb 's/\/\*.*\*\///g' |
sed -rb 's/(#include.*>)/\n/g'

会给你:

#include <stdio.h>
main(){int i=0;for(i=1; i<=5; i++){printf("Hello %d \n",i);}}

但是,如评论中所述,这没有多大意义,并且不会减小您的尺寸已编译目标文件!