DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Створення DLL та їх використання при неявному зв’язуванні на мові C

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
КН
Кафедра:
Кафедра електронних обчислювальних машин

Інформація про роботу

Рік:
2017
Тип роботи:
Лабораторна робота
Предмет:
Системне програмування
Група:
КН-31
Коротко про документ

Про що ця робота

У звіті досліджено технологію створення та використання бібліотек динамічного компонування (DLL) з неявним зв’язуванням на мові C. Виконано індивідуальне завдання з обробки рядків та реалізовано програмний код для демонстрації роботи DLL.

У роботі розглядаються

  • Динамічні бібліотеки DLL
  • Неявне зв'язування
  • Мова програмування C
  • Компонування програм
  • Обробка рядків

Зміст і розділи

  1. Мета лабораторної роботи
  2. Теоретичні відомості
  3. Індивідуальне завдання
  4. Код програми
  5. Результат виконання програми
  6. Висновок
Для кого:Студенти технічних спеціальностей, вивчаючі системне програмування та мову C.
Викладачі:Лашко О. Л.

Ключові поняття

DLLдинамічне компонуваннянеявне зв'язуванняоб'єктні файливиконуваний файлбібліотекафункціясимволкомпіляціязаголовочний файл

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки Національний університет “Львівська політехніка” Кафедра ЕОМ / Звіт з лабораторної роботи № 6 з дисципліни: “Системне програмування” на тему: “Створення DLL та їх використання при неявному зв’язування на мові C” Мета лабораторної роботи Ознайомитись з технологією та оволодіти навиками створення та використання бібліотек динамічного компонування з використанням неявного зв’язування. Теоретичні відомості Завершальним етапом створення програмного продукту є процес збирання (компонування) завантажувального модуля (.exe – файлу). Компонуванням (linking) називають процес створення фізичного або логічного виконуваного файлу (модуля) із набору об’єктних файлів бібліотек для подальшого виконання або під час виконання і вирішення проблеми неоднозначності імен, що виникає при цьому. У разі створення фізичного виконуваного файлу для подальшого виконання компонування називають статичним, коли у такому файлі міститься все потрібне для виконання програми. У випадку створення логічного виконуваного файлу під час виконання програми компонування називають динамічним, у цьому випадку образ виконуваного модуля збирають “на ходу”. Індивідуальне завдання 29. Ввести рядок тексту та два окремі символи. Вилучити з вхідного рядка всі другі символи після того як зустрінеться перший символ. Вивести новий рядок на екран. Код програми .dll dlltest.h #ifndef _DLLTEST_H_ #define _DLLTEST_H_ extern "C" __declspec(dllexport) void char_delete(char *, char, char); #endif // _DLLTEST_H_ dlltest.cpp #include <iostream> #include "dlltest.h" extern "C" __declspec(dllexport) void char_delete(char *str, char char1, char char2) { for (int i = 0; str[i]; ++i) if (str[i] == char1) { const int begin = i + 1; const int length = strlen(str); while (++i < length) for (int j = begin; str[j] && str[j - 1]; ++j) if (str[j] == char2) std::swap(str[j], str[j + 1]); break; } } .exe dlltest.h #ifndef _DLLTEST_H_ #define _DLLTEST_H_ extern "C" __declspec(dllexport) void char_delete(char *, char, char); #endif // _DLLTEST_H_ main.cpp #include <iostream> #include <conio.h> #include "dlltest.h" #define BUFFER 1024 void main() { std::cout << "Enter a string and two characters:" << std::endl; char str[BUFFER]; char char1, char2; std::cin.getline(str, BUFFER); std::cin >> char1 >> char2; char_delete(str, char1, char2); std::cout << str << std::endl; _getch(); } Результат виконання програми / / / Висновок Я ознайомився з технологією та оволодів навиками створення та використання бібліотек динамічного компонування з використанням неявного зв’язування.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!