Перейти к содержимому

Быстрая strlen

Вот наткнулся на, как оказалось, очередное изобретение велосипеда: быстрая реализация strlen, функция strlen_my из блога smallcode, хотя также был найден аналог этого алгоритма на ассемблере от 1998 года Поля Сие (Paul Hsieh).

Посравнивал со strlen из libc во FreeBSD, фришная реализация обгоняет на порядок:

size_t
strlen(str)
const char *str;
{
const char *s;

for (s = str; *s; ++s);
return(s - str);
}

Просмотрев множество реализация этой функции на koders.com, можно заметить, что большинство из них по сути являются различными вариантами фришной реализации. Похоже ничего быстрее пока не изобрели. 🙂

Быстрая strlen: 3 комментария

  1. itman

    Хе-хе. Я тут тоже писал про дафс девайс и разворачивание циклов. Я уж было ненароком подумал, что strlen разворачивается в intrinsic, но не тут-то было.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *