Execute-o por meio de uma ferramenta de recuo, como indent ou clang-format . Eles conhecem as regras gramaticais C e C ++ e reformatarão seu código de acordo com a forma como você as configura. clang-format está mesmo usando o mesmo analisador de linguagem que o compilador clang .
Por exemplo:
$ cat test.c
if ( a==b ||
c!=d &&
(e>f))
{
/* do something */
}
$ clang-format test.c
if (a == b || c != d && (e > f)) {
/* do something */
}
$ clang-format --style="{BreakBeforeBraces: Allman}" test.c
if (a == b || c != d && (e > f))
{
/* do something */
}
$ indent -kr -st <test.c
if (a == b || c != d && (e > f)) {
/* do something */
}
$ indent -kr -bl -st < test.c
if (a == b || c != d && (e > f))
{
/* do something */
}
O indent usado no exemplo acima é GNU indent , não o padrão indent encontrado nos sistemas BSD.