Online C Compiler
Apri nel compilatore

Edizione didattica italiana

Differenze tra gcc e g++

Scegli il driver corretto per C o C++ e distingui compilazione e collegamento.

Apri nel compilatore

Differenze tra gcc e g++
Scegli il driver corretto per C o C++ e distingui compilazione e collegamento.

gcc e g++ sono driver della stessa collezione GNU. Le estensioni dei file e le opzioni selezionano il linguaggio. g++ tratta normalmente il sorgente come C++ e aggiunge le librerie C++ necessarie al collegamento.

Per un programma C usa un file .c e gcc in modalità C; per C++ usa un file .cpp e g++. Cambiare soltanto driver non corregge automaticamente differenze di tipi, conversioni o librerie.

La compilazione produce codice oggetto; il linker combina oggetti e librerie. Una dichiarazione visibile può far compilare una chiamata, ma il collegamento richiede comunque la definizione della funzione.

Nei progetti misti compila ogni file nel linguaggio corretto e gestisci esplicitamente la compatibilità dei nomi con extern "C" negli header C++. Non presumere che ogni programma C valido sia anche C++ valido.

Codice sorgente

#include <stdio.h>

int main(void)
{
    puts("Hello from C");
    return 0;
}
Apri nel compilatore

Domande frequenti

Perché il codice e alcuni risultati restano in inglese?

Parole chiave C, identificatori, commenti del programma e output attesi restano quelli originali per preservare codice eseguibile e test coerenti. Spiegazioni e istruzioni sono tradotte.