Revise trechos compactos com regras gerais de estilo C. A formatação não valida a compilação; confira a saída com suas ferramentas.
Funciona localmente no seu navegadorCole um arquivo ou trecho de C no editor e acione o botão: a ferramenta quebra as linhas depois de chaves e pontos e vírgulas, indenta o resultado com tabulações e mostra tudo destacado no painel abaixo.
É uma passada de texto, não um compilador. Strings, comentários e linhas de pré-processador atravessam sem alteração, e o editor mantém o texto original para você comparar os dois.
Medido na página: char *p="a;b}"; mantém o ponto e vírgula e a chave dentro da string, o comentário /* block ; { } */ conserva a pontuação, e uma macro com continuação de linha (#define LONG(a) do { \ ...) volta caractere por caractere, incluindo #define X {1,2} em uma única linha.
É exatamente esse o objetivo: só o espaço em branco se move. Quando um trecho depende do espaçamento exato dentro de macros ou das linhas de continuação, o formatador prefere deixar essas linhas como estão a arriscar mudar o programa.
A formatação é feita por varredura de texto, não por gramática, então linhas compactas são abertas por regras. struct S{int a;char *b;};typedef struct S S; vira quatro linhas, mas o trecho final };typedef struct S S; fica em uma só: as expressões não são respaçadas.
A ferramenta não compila, não analisa e não valida nada. Ponto e vírgula ausente, chaves desbalanceadas ou sintaxe inválida geram o melhor layout possível em vez de um erro; use a saída como rascunho legível e depois passe pelo compilador ou linter.
A formatação roda inteiramente na página: uma amostra de 64 KB (4.000 instruções, cerca de 82 KB de saída) volta em menos de um segundo no Chrome, e a execução não dispara nenhuma requisição de rede, ou seja, funciona sem conexão.
Acima de cerca de 120.000 caracteres de saída o painel passa a texto simples, sem cores, para não parar a aba. Para arquivos desse tamanho, dividir a entrada ou usar um formatador local continua sendo mais confortável.