Благодаря этой статье можно понять процесс, происходящий при компиляции программы.

Обзор

Каждый программист во время учебы в колледже или школе изучает C как первый язык, и самая первая программа, которую он пишет, это Hello World! программа. Это способ поздороваться с миром программирования.

Введение

Точно так же, как ребенок в дошкольном возрасте учится писать символы, аналогично парадигме программирования, программу «Hello World» можно рассматривать как ступеньку или первый шаг к изучению любого языка программирования, такого как C, C++, java, python, и т. д. Это также одна из самых простых программ, которые можно выучить. Основным требованием программы является отображение сообщения «Hello World» на экране вывода.

Поскольку мы имеем дело с языком C, который является языком высокого уровня. Но чтобы преобразовать этот язык высокого уровня в язык, понятный машине, нужен компилятор.

Компиляция нашей первой программы на C

Программы на C имеют расширение файла .c, а после компиляции создается исполняемый файл с расширением .exe. Поскольку эти файлы .exe зависят от машины, следует отметить, что эти файлы .exe будут работать в той системе, в которой они были скомпилированы.

# include <stdio.h>
 
int main(){
   ……..
 
    return 0;
}

Пояснение:

  1. Программа начинается с # include, что позволяет пользователю использовать файлы заголовков в программе. Эти заголовочные файлы представляют собой не что иное, как предварительно написанный код, к которому можно напрямую обращаться в программе.
  2. Операторы, начинающиеся с #, заменяются предварительно написанным кодом в заголовочных файлах во время компиляции с помощью препроцессора.
  3. Препроцессор создает промежуточный файл с расширением .i, который включает код файла заголовка.
  4. Более поздний компилятор переводит эти файлы .i в файлы .s, которые содержат инструкции уровня сборки.
  5. С помощью ассемблера эти инструкции уровня ассемблера преобразуются в двоичный код или язык машинного уровня, которые хранятся в объектном файле (расширение .obj).
  6. Здесь компоновщик используется для объединения некоторых файлов библиотеки с нашими файлами .obj для определения некоторых неизвестных операторов.
  7. Наконец, после всех этих процессов мы, наконец, получаем наш .exe файл, который готов к запуску в системе.

Дисплей Привет, мир! в до

# include <stdio.h>
 
int main(){
    printf("Hello, World!");
 
    return 0;
}

Пояснение:

  1. В первой строке программы включен заголовочный файл ‹stdio.h› для стандартной функции ввода-вывода в C
  2. В отсутствие ‹stdio.h› пользователь не может использовать такие операторы, как printf() или scanf().
  3. main() — основная функция программы, с которой начинается выполнение программы.
  4. Внутри функции main() мы использовали 2 оператора: printf и return 0.
  5. Функция printf() — это стандартная функция, которая используется для отображения строки в окне вывода. В этом примере окно вывода будет содержать Hello, World!.
  6. return 0 вернет 0, демонстрируя, что выполнение программы прошло успешно без каких-либо ошибок. Любое ненулевое значение будет считаться неудачным выполнением программы.

Отображение Привет, мир! в C с помощью функции

# include <stdio.h>
 
void print_hello_world(){
    printf("Hello, World!");
}
 
int main(){
   
    print_hello_world();
 
    return 0;
}

Здесь функция print_hello_world() используется для отображения Hello, World! который ранее отображался в основной функции

Функция в C или любом другом языке программирования — это группа операторов, которые можно снова и снова использовать в программе, вызывая их.

Пояснение

  1. Здесь функции print_hello_world предшествует пустота, которая является не чем иным, как возвращаемым типом любой функции. Если какой-либо функции предшествует пустота, это означает, что функция не вернет никакого значения.
  2. В функции main() мы вызвали функцию print_hello_world(), после чего управление программой переместится с функции main() на функцию print_hello_world().
  3. В этой функции он напечатает Hello, World! на экране вывода, и после выполнения функции он вернется обратно к функции main().
  4. Функция main() возвращает системе 0, и выполнение останавливается.

Как Привет, Мир! Программа работает

  1. # include — это препроцессор, используемый для добавления методов, файлов заголовков, таких как ‹stdio.h›, обеспечивающих функции ввода и вывода, такие как printf(), scanf() и т. д.
  2. Функция main() — это место, где начинается выполнение программы.
  3. Привет, мир! это самая простая программа, в которой мы напечатали строку, содержащую указанные буквы, с помощью встроенной функции, т.е. printf().
  4. Оператор return 0 изображает конец программы. Всякий раз, когда компилятор получает возврат 0 от основной функции, выполнение программы останавливается.

Заключение

Эта статья дает нам базовое понимание выполнения программы на C. Вместе с этим мы начали новое путешествие в мир программирования и поняли разные способы, с помощью которых Hello, World! программа может быть выполнена на C.

Другие статьи по программированию на C читайте в разделе Scaler Topics.

Не забудьте подписаться на Валери 🇺🇦, чтобы получать больше интересного контента.

Счастливого обучения!