Загрузить файлы в «/»

This commit is contained in:
2025-04-22 13:56:13 +00:00
parent bd0c351861
commit 773aeddff1

66
README.md Normal file
View File

@ -0,0 +1,66 @@
# Module_connection
## Описание
Модульная программа на C. Этот проект представляет собой модульную программу на языке C, состоящую из главного файла `connection_module.c` и нескольких модульных файлов (`module_00.c`, `module_01.c`, `module_04.c` и др.). Программа выполняет функции модулей последовательно, используя слабые ссылки для обработки отсутствующих модулей. Каждый модуль предоставляет функцию `module_XX_run()`, которая выполняет определённую задачу и возвращает код завершения (0 — успех, ненулевое значение — ошибка).
## Возможности
Подключение любых модулей (программ, написанных на языке программирования C) с практически любыми функциями.
## Структура проекта
- **connection_module.c**: Главный файл, содержащий функцию `main()`. Отвечает за инициализацию массива указателей на функции модулей, их последовательный запуск и обработку ошибок.
- **module_00.c**: Пустой модуль, возвращающий 0.
- **module_01.c**: Выводит сообщение "Hello, world!" в консоль.
- **module_04.c**: Выводит сообщение "Permission denied." в красном цвете с анимацией (пошаговый вывод символов с задержкой 0.1 секунды).
- **module_21.c**: Отображает содержимое файла `README.md` в консоли с форматированием Markdown, используя утилиту `glow`.
- Другие модули (`module_02.c`, `module_03.c`, ..., `module_35.c`) отсутствуют в предоставленных файлах, но могут быть добавлены. Благодаря слабым ссылкам их отсутствие не приводит к ошибкам компиляции.
## Зависимости
- Стандартная библиотека C (`stdio.h`, `string.h`).
- Библиотека `unistd.h` (используется в `module_04.c` для функции `usleep`).
- Компилятор GCC для сборки проекта.
### Требования
- Установленный компилятор GCC.
- POSIX-совместимая система (для `usleep` в `module_04.c`).
### Сборка и запуск
1. Поместите все файлы (`connection_module.c`, `module_*.c`) в одну директорию.
2. Выполните команду для компиляции:
```bash
gcc -o connection_module connection_module.c module_*.c
```
## Установка в систему
```bash
sudo mv connection_module /usr/local/bin/
```
## Запуск в директории
```bash
./connection_module
```
## Установка в систему
```bash
sudo mv connection_module /usr/local/bin/
```
## Автор
**Grannik**
## Контакты
- **Сайт**: [Granni](https://grannik.neocities.org/)
## Репозитории
- **Codeberg**: [module_connection](https://codeberg.org/Grannik/Module_connection)
- **GitHub**: [module_connection](https://github.com/Grannik/Module_connection)
- **GitLab**: [module_connection](https://gitlab.com/grannik/module_connection/-/tree/main)
- **SourceForge**: [module_connection](https://sourceforge.net/projects/module-connection/)
- **NotABug**: [module_connection]()
- **Gitea (Demo)**: [module_connection]()
- **Gogs (Demo)**: [module_connection]()
## Лицензия
Этот проект распространяется под лицензией **MIT**.