Skip to content

dchudik/GolangSharedLibrary

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Создание динамической библиотеки на языке Golang

Задание:

Вариант 30 Составить функцию, проверяющую, являются ли данное число простым. Вторая функция должна вернуть ближайшее большее данного простое число. Например, для числа 11 первая функция возвращает true, вторая –13. Для числа 14 первая функция должна вернуть false, а вторая –17

Описание:

Файл functions.go содержит функции, которые необходимо создать по заданию Для компиляции в динамическую библиотеку надо выполнить команду:

[dima@localhost SUAI]$ go build -o chudinov.so -buildmode=c-shared functions.go

Файл functions_test.go содержит набор unit-тестов для проверки корректности работы функций Для запуска тестов надо выполнить команду:

[dima@localhost SUAI]$ go test -v
Пример вывода:

[dima@localhost SUAI]$ go test -v
=== RUN   TestIsSimple
--- PASS: TestIsSimple (0.00s)
=== RUN   TestNextSimple
--- PASS: TestNextSimple (0.00s)
=== RUN   TestByTK
--- PASS: TestByTK (0.00s)
    functions_test.go:46: Test IsSimple function on simple digit in TK
    functions_test.go:51: Test IsSimple function on not simple digit in TK
    functions_test.go:56: Test NextSimple function on data in TK
PASS
ok      dll     0.003s
[dima@localhost SUAI]$

Файл test.py содержит пример использования динамической библиотеки на языке Python Для запуска Python-скрипта надо выполнить команду:

[dima@localhost SUAI]$ python test.py
Пример вывода:

[dima@localhost SUAI]$ python test.py
For integer 11
Is simple: 
True
Next simple: 
13
For integer 14
Is simple: 
False
Next simple: 
17
[dima@localhost SUAI]$

Важно В начале надо убедиться что Python по умолчанию использует версию 3 и больше Для проверки надо выполнить команду:

[dima@localhost SUAI]$ python --version
Python 3.7.6

About

Lab 13 for SUAI

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published