改革 C++ 代码

Reformating c++ code?

本文关键字:代码 C++ 改革      更新时间:2023-10-16

如何在自动生成的 c++ 代码中将分成三行的 'for' 语句重新格式化为一行?我尝试取消脱壳,但我无法使其格式化括号内的部分。SED似乎不适合这个。有人可以建议我其他格式化程序或一些可以处理它的 linux 命令吗?

要格式化的代码:

void func(double* s, Quaternion& a, int n)
{
 int size((n<4)?n:4);
 for (int i=0;
      i<size;
           i++)
 {
  a[i] = s[i];
 }
}

我希望上面的"for"语句格式化为一行,例如:

 for (int i=0; i<size; i++)

尝试 clang 格式。这有点新,但关于GoingNative2013的演讲显示出有希望的结果。

你可以使用 gnu 缩进。

为您的代码段说indent -npsl inputfile.c会导致:

void func (double *s, Quaternion & a, int n)
{
  int size ((n < 4) ? n : 4);
  for (int i = 0; i < size; i++)
    {
      a[i] = s[i];
    }
}

可以在此处访问该手册。