Добавить в корзинуПозвонить
Найти в Дзене
КУЗИНОБИТ

Как я решил покорить C. Часть 1.

Привет, друзья! Решил я тут одну задачку себе подкинуть и придумал проект, для которого понадобился язык программирования C. До этого я уже покорил C#, Java и Python. Особенно часто я использую Python, даже решил создать курс по нему, где мы делаем простенькую игру. Уже начал выкладывать посты на своём канале Телеграм, присоединяйтесь! Но вернёмся к C. Не знаю, сколько времени займёт его изучение, но думаю, что не очень долго, ведь основы везде одинаковые. Решил что буду делиться своими успехами и неудачами в изучении C в статьях на Дзене. Зачем я вам всё это рассказываю? Ну, во-первых, это мотивирует меня самого. А во-вторых, вдруг кто-то вдохновится и тоже захочет стать крутым программистом или наоборот? 🤣 Кто знает, может быть, среди вас есть будущие легенды IT? Первым делом я решил выбрать среду разработки (IDE), в которой буду учиться и писать свои суперские программы. 😁 Посмотрел рекомендации в интернете и нашёл несколько вариантов для тестирования. Eclipse (https://eclipseid

Привет, друзья!

Решил я тут одну задачку себе подкинуть и придумал проект, для которого понадобился язык программирования C. До этого я уже покорил C#, Java и Python. Особенно часто я использую Python, даже решил создать курс по нему, где мы делаем простенькую игру. Уже начал выкладывать посты на своём канале Телеграм, присоединяйтесь!

Но вернёмся к C. Не знаю, сколько времени займёт его изучение, но думаю, что не очень долго, ведь основы везде одинаковые. Решил что буду делиться своими успехами и неудачами в изучении C в статьях на Дзене.

Зачем я вам всё это рассказываю? Ну, во-первых, это мотивирует меня самого. А во-вторых, вдруг кто-то вдохновится и тоже захочет стать крутым программистом или наоборот? 🤣 Кто знает, может быть, среди вас есть будущие легенды IT?

Первым делом я решил выбрать среду разработки (IDE), в которой буду учиться и писать свои суперские программы. 😁 Посмотрел рекомендации в интернете и нашёл несколько вариантов для тестирования.

Eclipse (https://eclipseide.org/)

С Eclipse я познакомился ещё во времена изучения Java и тогда он мне не понравился, и сейчас я не нахожу его подходящим для себя. Что-то в нём вызывает у меня дискомфорт. Не могу сказать, что он плохой, но мне он просто не подходит. Возможно, именно поэтому наши пути с Java разошлись. Честно говоря, я не ожидал, что он сейчас поддерживает столько языков. 🤔 Может как-нибудь попробую с ним подружиться.

Visual Studio Code (https://code.visualstudio.com/)

Потом я решил попробовать Visual Studio Code. Оказалось, что она уже была установлена на моём компьютере, на этом канале даже есть статья как скачать и установить (https://dzen.ru/a/ZhkIbjk2HzJvka5T). К нему Добавил необходимые плагины для работы с C/C++ (рис. 1).

Рис. 1. Установленные расширения для работы с C/C++
Рис. 1. Установленные расширения для работы с C/C++

и приступил к своему первому "Hello, World!".

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

но тут меня ждали первые подводные камни (рис. 2)...

Рис. 2. Ошибка "#include errors detected. Please update your includePath..."
Рис. 2. Ошибка "#include errors detected. Please update your includePath..."

Если говорить совсем коротко и не вдаваться в подробности, то у меня не был установлен компилятор. Поиск и чтение различных статей направили меня в сторону к minGW (https://sourceforge.net/projects/mingw/).

Установка и настройка MinGW.

Скачиваем и запускаем установщик. В первом окне нажимаем «Install» (рис. 3). В следующем окне ничего не меняем и нажимаем «Continue» (рис. 4).

Рис. 3. Welcome окно установщика MinGW.
Рис. 3. Welcome окно установщика MinGW.
Рис. 4. Настройки установки MinGW.
Рис. 4. Настройки установки MinGW.

Дожидаемся скачивания и установки менеджера MinGW (рис. 5) и после окончания нажимаем «Continue» (рис. 6).

Рис. 5. Процесс скачивания и установки менеджера MinGW.
Рис. 5. Процесс скачивания и установки менеджера MinGW.
Рис. 6. Окно с завершенной установкой менеджера MinGW.
Рис. 6. Окно с завершенной установкой менеджера MinGW.

В открывшемся менеджере (рис. 7) необходимо выбрать все пакеты для установки. Для этого следует нажимать правую кнопку мыши на каждом пакете и выбирать пункт «Mark for installation» (рис. 8). Затем нужно нажать кнопкe «Installation» и в выпадающем меню выбрать «Apply Changes» (рис. 9).

Рис. 7. Окно менеджера с доступными пакетами.
Рис. 7. Окно менеджера с доступными пакетами.
Рис. 8. Выбор пакета для последующего скачивания и установки.
Рис. 8. Выбор пакета для последующего скачивания и установки.
Рис. 9. Применение параметров для скачивания и установки отмеченных пакетов.
Рис. 9. Применение параметров для скачивания и установки отмеченных пакетов.

В открывшемся окне необходимо нажать кнопку «Apply» (рис. 10) и дождаться окончательной установки ранее отмеченных пакетов (рис. 11). После завершения установки нужно нажать кнопку «Close» (рис. 12). Затем следует закрыть окно менеджера (рис. 13).

Рис. 10. Подтверждение запуска скачивания и установки пакетов.
Рис. 10. Подтверждение запуска скачивания и установки пакетов.
Рис. 11. Процесс скачивания и установки пакетов.
Рис. 11. Процесс скачивания и установки пакетов.
Рис. 12. Окно подтверждения завершения процесса скачивания и установки.
Рис. 12. Окно подтверждения завершения процесса скачивания и установки.
Рис. 13. Окно менеджера.
Рис. 13. Окно менеджера.

Теперь осталось добавить адрес установленного компилятора в PATH. Для этого нажмите сочетание клавиш Win+Pause или нажмите правой кнопкой мыши на значке «Мой компьютер» и выберите в контекстном меню «Свойства» (рис. 14). В открывшемся окне перейдите в «Дополнительные параметры системы» (рис. 15).

Рис. 14. Контекстное меню "Мой компьютер".
Рис. 14. Контекстное меню "Мой компьютер".
Рис. 15. Свойства компьютера.
Рис. 15. Свойства компьютера.

В окне «Свойства системы» переходим в «Переменные среды» (рис. 16).

Рис. 16. Свойства системы.
Рис. 16. Свойства системы.

В окне «Переменные среды» в разделе «Системные переменные» находим «Path». Кликнем на него дважды или выберем «Изменить». Затем нажимаем «Создать» и добавляем адрес C:\MinGW\bin (рис. 17). После этого нажимаем «ОК» (рис. 18).

Рис. 17. Внесение изменений в переменную среду PATH.
Рис. 17. Внесение изменений в переменную среду PATH.
Рис. 18. Новая переменная C:\MinGW\bin
Рис. 18. Новая переменная C:\MinGW\bin

На этом все. Теперь можно проверить работу первой программы на C, но для начала нужно перезапустить VSCode. Перезапускаю и о чудо! Ошибок больше нет (рис. 19).

Рис. 19. Отображение кода без ошибок.
Рис. 19. Отображение кода без ошибок.

Для запуска программы нажимаю F5 и у меня происходит запрос на выбор debugger. Выбрал С++ (GDB/LLDB) (рис. 20). Потом выбрал нужную configuration (рис. 21).

Рис. 20. Выбор debugger.
Рис. 20. Выбор debugger.
Рис. 21. Выбор configuration
Рис. 21. Выбор configuration

И в конечном итоге я получил ошибку (рис. 22)... Снова 😅😅😅

Рис. 22. Unable to start debugging.
Рис. 22. Unable to start debugging.

Я удалял все плагины, переустанавливал компилятор, но ничего не помогало. Тогда я решил попробовать другую среду разработки — Code::Blocks (https://www.codeblocks.org/). Установил её без проблем. Запустил, создал новый проект. Компилятор нашёлся сам, и мне предложили его выбрать. Я написал программу, запустил… и она запустилась без единой ошибки! Вот это да!

Пожалуй, пока отложу попытки разобраться с VSCode и буду продолжать работу в Code::Blocks. Наверное, я что-то упустил, но после стольких неудачных попыток написать «Hello, World!» я немного утомился. Думаю, на сегодня хватит C, вернусь к нему позже. Как говорится, всему своё время.

P.S. Если кто-то из разработчиков на C это читает, поделитесь, пожалуйста, какие среды разработки и компиляторы используете вы? Просто интересно это мне так повезло или все через это проходили? 🤣🤣🤣