DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

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

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Кафедра ЕОМ

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

Рік:
2017
Тип роботи:
Лабораторна робота
Предмет:
Системне програмування та операційні системи

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

Міністерство освіти і науки Національний університет “Львівська політехніка” Кафедра ЕОМ / Звіт з лабораторної роботи № 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(); } Результат виконання програми / / / Висновок Я ознайомився з технологією та оволодів навиками створення та використання бібліотек динамічного компонування з використанням неявного зв’язування.
Антиботан аватар за замовчуванням

07.05.2017 14:53

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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