Online C Compiler
Abrir no compilador

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

Falta um ponto e vírgula em C

Revise a instrução anterior ao diagnóstico e diferencie terminadores de blocos.

Abrir no compilador

Falta um ponto e vírgula em C
Revise a instrução anterior ao diagnóstico e diferencie terminadores de blocos.

A mensagem de ponto e vírgula esperado pode aparecer na linha posterior ao erro real. Revise declarações, atribuições e chamadas anteriores. Um bloco de função não leva ponto e vírgula após a chave final, mas uma declaração de struct precisa dele.

Não acrescente pontos e vírgulas ao acaso: um após if ou while pode criar uma instrução vazia e mudar o comportamento. Em for, os separadores internos fazem parte da sintaxe.

Confira também aspas, parênteses e comentários não fechados, que podem confundir a análise. Corrija o primeiro erro relevante e compile novamente antes de tratar todas as mensagens seguintes.

Código C

#include <stdio.h>

// FIXED 1: Semicolon added after struct definition
struct UserProfile {
    int id;
    char username[32];
};

int calculate_tax(int income) {
    // FIXED 2: Semicolon added after variable assignment
    int rate = 15;
    return income * rate / 100;
}

int main(void) {
    printf("=== Expected Semicolon Resolved ===\n");
    struct UserProfile user = {1, "Alice Chen"};
    printf("User ID: %d, Name: %s\n", user.id, user.username);
    printf("Calculated Tax: $%d\n", calculate_tax(50000));
    return 0;
}
Abrir no compilador

Saída esperada

=== Expected Semicolon Resolved ===
User ID: 1, Name: Alice Chen
Calculated Tax: $7500

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.