Online C Compiler
Abrir no compilador

Edição didática em português. O código e suas saídas preservam o original.

Clang ou GCC para programar em C

Compare os dois compiladores usando o mesmo padrão, avisos e programa de teste.

Abrir no compilador

Clang ou GCC para programar em C
Compare os dois compiladores usando o mesmo padrão, avisos e programa de teste.

GCC é a GNU Compiler Collection; Clang é um front-end do projeto LLVM. Ambos compilam C. Comece com o exigido pelo curso ou projeto e use o outro para verificar portabilidade quando possível.

Para comparar resultados, selecione o mesmo padrão, por exemplo -std=c17, e avisos como -Wall -Wextra -Wpedantic. Versões, extensões e bibliotecas do sistema influenciam; um diagnóstico diferente não prova sozinho que um compilador está errado.

Não presuma que um deles sempre gera programas mais rápidos. Meça uma carga real com opções equivalentes e verifique primeiro a correção. Sanitizadores e diagnósticos podem ajudar a encontrar acessos inválidos e outros erros.

O exemplo percorre um array e soma seus elementos. Modifique os valores, preveja a soma e teste com os dois compiladores em um ambiente em que estejam disponíveis.

Código C

#include <stdio.h>

int main(void)
{
    int values[] = {3, 5, 7};
    int total = 0;
    size_t count = sizeof values / sizeof values[0];

    for (size_t i = 0; i < count; ++i) {
        total += values[i];
    }

    printf("Total: %d\n", total);
    return 0;
}
Abrir no compilador

Perguntas frequentes

Por que o código e a saída continuam em inglês?

Palavras-chave, identificadores e textos verificados pelos testes são preservados para não alterar o programa. As explicações e os controles estão traduzidos.