gcc vs g++: qual è la differenza?
I compilatori gcc e g++ funzionano in modo abbastanza simile quando si tratta di compilare programmi C in Linux. Ecco come sono diversi l'uno dall'altro.
Hai mai pensato alla differenza tra GCC e G++? Ebbene, se dovessi rispondere in una frase, sarebbe"GCC viene utilizzato per compilare programmi C mentre G++ è per C++".
Ma c'è molto altro di cui parlare, ad esempio come installarli e utilizzarli.
Cominciamo quindi con l'introduzione di base.
Qual è la differenza tra GCC e G++?
Il compilatore GCC viene utilizzato per compilare i programmi C, mentre il G++ viene utilizzato per i programmi C++. Sebbene sia comunque possibile utilizzare GCC per compilare programmi C++ (utilizzandolo nel formato gcc -xc++ -lstdc++ -shared-libgcc
, g++ fornisce una sintassi più semplice.
In realtà, GCC (GNU Compiler Collection) è un super set di vari compilatori. Ha g++ per C++ e GNAT per il linguaggio di programmazione Ada.
Sebbene gcc sia in grado di compilare programmi C++ con l'aiuto di flag speciali, dovresti invece usare g++. Il compilatore g++ si collega alle librerie C++ standard per impostazione predefinita. Anche GCC può farlo, ma non per impostazione predefinita.
Ora diamo un'occhiata all'installazione.
Installazione
Essendo uno degli strumenti più essenziali per compilare programmi C e C++ in Linux, entrambi sono disponibili nei repository di tutte le distribuzioni Linux.
Ecco come installarlo su varie distribuzioni Linux:
Per la base Ubuntu/Debian:
sudo apt install gcc g++
Per Fedora/RHEL:
sudo dnf instal gcc g++
Per ArchLinux:
sudo pacman -S gcc
(Arch include G++ nel pacchetto GCC stesso)
Utilizzo
In questa sezione ti spiegherò come compilare programmi C e C++ utilizzando GCC e G++.
Per rendere accessibile questa guida, utilizzerò il seguente codice di programmazione C:
#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
Ed ecco il codice C++:
#include <iostream>
int main() {
std::cout << "Hello, World!" << std::endl;
return 0;
}
Entrambi dovrebbero stampare una semplice riga Hello, World!
.
Compila ed esegui codice C
Per compilare un programma C, puoi usare gcc o g++. Se vuoi usare gcc, ecco la sintassi che devi seguire:
gcc -o my_program my_program.c
Qui,
-o
viene utilizzato per specificare il file di outputmy_program
è dove specifichi il nome del file di outputmy_program.c
è dove aggiungi il nome del file di input
Ad esempio, ecco come ho compilato il mio file hello.c
utilizzando il compilatore GCC:
gcc -o hello hello.c
Per eseguire qualsiasi file compilato, aggiungi ./
prima del nome del file compilato:
./hello
Allo stesso modo, se vuoi usare G++ per compilare il programma C, usa quanto segue:
g++ -o cpp_program cpp_program.c
Ecco come ho compilato ed eseguito lo stesso programma hello.c
con G++:
L'operatore &&
viene utilizzato per eseguire più comandi ma verrà eseguito prima il codice di compilazione e poi l'esecuzione.
Compila ed esegui codice C++
Per compilare il codice C++ è necessario utilizzare il compilatore G++ nel modo seguente:
g++ -o my_code my_code.cpp
Una volta terminato, puoi eseguire il codice utilizzando il file eseguibile:
./my_code
Ad esempio, ecco come ho compilato il file hello.cpp
utilizzando il compilatore G++:
g++ -o hello hello.cpp && ./hello
Successivo: Ecco alcuni importanti flag del GCC
Se hai appena iniziato con la programmazione in C, stai per utilizzare molto GCC ma ci sono più flag che puoi utilizzare durante la compilazione del codice.
Ed ecco una guida dettagliata sulle importanti bandiere del GCC:
Spero che troverai utile questa guida.