Интегрировать заданный элемент управления портом в C

#c #algorithm #porter-stemmer

#c #алгоритм #porter-stemmer

Вопрос:

Я видел, что у следующего есть реализация портер-стеммера для C http://tartarus.org/martin/PorterStemmer /

Однако, хотя я пытался несколько раз, я не могу интегрировать его в свой код. Может кто-нибудь сказать мне, как я должен вызвать загруженный файл и что я должен передать ему, чтобы остановить строку.

Другими словами, у меня есть программа, которая требует, чтобы stem строил строки, и для этого мне нужен стеммер porter. Я подумываю об использовании вышеупомянутого, но я не знаю, как использовать загруженный файл. Пожалуйста, приведите пример

Ответ №1:

Код c предоставляет функцию:

 int stem ( *str, int i, int j);
 

Это тот, который вы должны вызвать. Он изменяет исходную строку и возвращает длину результата.Типичное использование продемонстрировано в функции stem_file(), которая выполняет что-то вроде:

 char buff[12345]; //should contain one word.

buff [ stem(buff, xx, yy) ] = '' ;
 

Я не знаю, что именно означают 2-й и 3-й параметры. Посмотрите его.

Ответ №2:

Код состоит из двух частей.

Существует часть, которая отмечает окончание определения стеммера. До этого они показали основные 5 шагов, которые определяет алгоритм Портера. Следующая часть касается части обработки файлов, преобразует символы в нижний регистр. функция stem имеет дело с частью инициализации. j рассматривается как начальная длина слова.

Пройдите через него правильно один раз. Это не очень легко понять.