📜 gcc и g++: В чем разница?

В чем разница между GCC и G++?

by itisgood

Задумывались ли вы когда-нибудь о разнице между GCC и G++?

Если ответить на этот вопрос одним предложением, то это будет “GCC используется для компиляции программ на языке Си, а G++ – для Си++”.

Но можно рассказать еще о многом, например, о том, как их устанавливать и использовать.

Поэтому давайте начнем с базового введения.

В чем разница между GCC и G++?

Компилятор GCC используется для компиляции программ на языке Си, а G++ – для программ на языке Си++.

Хотя для компиляции программ на Си++ можно использовать GCC (используя его в формате gcc -xc++ -lstdc++ -shared-libgcc), g++ обеспечивает более простой синтаксис.

Вообще-то, GCC (GNU Compiler Collection) – это супернабор различных компиляторов.

В него входят g++ для языка Си++ и GNAT для языка программирования Ada.

Хотя gcc способен компилировать программы на языке Си++ с помощью специальных флагов, лучше использовать g++.

Компилятор g++ по умолчанию ссылается на стандартные библиотеки Си++.

GCC также может это делать, но не по умолчанию.

💄 Установка GCC и средста разработки на RHEL 8 / CentOS 8

Установка

Будучи одним из самых необходимых инструментов для компиляции программ на языках C и C++ в Linux, он доступен в репозиториях всех дистрибутивов Linux.

Ниже описано, как установить его в различных дистрибутивах Linux:

Для Ubuntu/Debian:

sudo apt install gcc g++

Для Fedora/RHEL:

sudo dnf instal gcc g++

Для Arch Linux:

sudo pacman -S gcc

(Arch включает G++ в состав самого пакета GCC)

Использование

В этом разделе мы расскажем о том, как компилировать программы на языках Си и Си++ с помощью GCC и G++.

Чтобы сделать это руководство доступным, я буду использовать следующий программный код на языке Си:

#include <stdio.h>

int main() {
    printf("Hello, World!\n");
    return 0;
}

А вот код на языке C++:

#include <iostream>

int main() {
    std::cout << "Hello, World!" << std::endl;
    return 0;
}

Они оба должны вывести простую строку Hello, World!

Напишите свою первую программу «Hello World» на 25 разных языках программирования

Компиляция и выполнение кода на языке Си

Для компиляции программы на языке Си можно использовать gcc или g++. Если вы хотите использовать gcc, то вот синтаксис, который необходимо соблюдать:

gcc -o my_program my_program.c

Здесь,

  • -o используется для указания выходного файла
  • my_program – это место, где указывается имя выходного файла
  • my_program.c – это место, куда добавляется имя входного файла.

Например, вот как я скомпилировал свой файл hello.c с помощью компилятора GCC:

gcc -o hello hello.c

Чтобы выполнить любой скомпилированный файл, добавьте ./ перед именем скомпилированного файла:

./hello

Аналогично, если вы хотите использовать G++ для компиляции программы на языке C, выполните следующее:

g++ -o cpp_program cpp_program.c

Компиляция и запуск кода на языке C++

Для компиляции кода на языке C++ необходимо использовать компилятор G++ следующим образом:

g++ -o my_code my_code.cpp

После этого код можно запустить с помощью исполняемого файла:

./my_code

Например, вот как я скомпилировал файл hello.cpp с помощью компилятора G++:

g++ -o hello hello.cpp && ./hello

см. также:

You may also like

Leave a Comment