小技巧:用indent来格式化你的C代码

  indent是Linux上的按照要求格式化源代码的好工具。对于C程序,它默认的输出不太令人习惯,可以执行一下指令来格式化C语言源码:

indent -kr -i8 -ts8 -sob -l80 -ss -bs -psl <file>

  如果要经常使用,可以写一个简单的shell脚本:

1
indent -kr -i8 -ts8 -sob -l80 -ss -bs -psl $1

  命名为cindent。使用例子如下:

  

复制代码
$cat indenttest.c
#include <stdio.h>

int a(void) 
{
        int i=0,g=0;
            while(i++<100000)
                      {
                                   g+=i;
                                     }
              return g;
}

int b(void)
{
          int i=0,g=0;
            while(i++<400000)
                      {
                                  g +=i;
                                    }
              return g;
}
int main(int argc, char** argv)
{
           int iterations;
              if(argc != 2)
                         {
                                       printf("Usage %s \n", argv[0]);
                                             exit(-1);
                                                }
                 else
                               iterations = atoi(argv[1]);
                    printf("No of iterations = %d\n", iterations);
                       while(iterations--)
                                  {
                                                a();
                                                      b();
                                                         }
}
$./cindent.sh indenttest.c
$cat indenttest.c
#include <stdio.h>

int
a(void)
{
        int i = 0, g = 0;
        while (i++ < 100000) {
                g += i;
        }
        return g;
}

int
b(void)
{
        int i = 0, g = 0;
        while (i++ < 400000) {
                g += i;
        }
        return g;
}

int
main(int argc, char **argv)
{
        int iterations;
        if (argc != 2) {
                printf("Usage %s \n", argv[0]);
                exit(-1);
        } else
                iterations = atoi(argv[1]);
        printf("No of iterations = %d\n", iterations);
        while (iterations--) {
                a();
                b();
        }
}
复制代码

  代码果然马上变得好看了。当然,这只是补救之道,关键是写代码时就要注意格式——选择一个好的编辑器总是很重要。

 本人的部分博文已经转移至chaosxie.top,本博客将不再更新,希望您能继续支持我!

posted @   Chaobs  阅读(1108)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
点击右上角即可分享
微信分享提示