Я не думаю, что существуют какие-либо библиотеки C для вычисления семейства функций NCD или чего-либо подобного. Лучше всего сделать это в MATLAB
, а затем преобразовать m files
в эквивалентный C
код как mex file
. Кроме того, вы также можете написать свой собственный код.
Если ваш код может работать в системах Linux, вы можете использовать утилиту tar
с опцией -z
для gzip
и -j
для алгоритма сжатия bzip
. Чтобы создать архив bzip
, используйте следующую опцию: tar -cjf foo.bz2 temp/
создает bzip
архив каталога temp/
и присваивает имя выводу foo.bz2
. Чтобы создать gzip
заархивированный файл, используйте следующие параметры: tar -cjf foo.gzip temp/
Чтобы вызвать этот код из c
программы, вы можете использовать команду system()
. Эта команда принимает любую утилиту, которую вы хотите вызвать (с параметрами), в качестве входных данных и возвращает int
, указывающий на успех или неудачу. Вы можете вызвать это так:
int i = system("tar -cjf foo.bz2 temp/")