LINUX.ORG.RU

История изменений

Исправление vodz, (текущая версия) :

Возвращает текущий токен.

А что по вашему надо было возвращать? Указатель на сдвинутый буфер файла? Да не вопрос. Но речь то про юзабельность.

Он засунул возврат в общий контекст,

И? При получении следующего всё предыдущее он теряет.

Это не значит, что из этого контекста нельзя писал в массив.

Этот массив структур с полями указателем и длинной надо ещё создать, расширять и вдруг окажется, что та структура которую он сейчас завел нафиг не нужна, так как применение её только для того, чтобы один параметр передавать. :)

zero-terminating - ты добавил только потому, что ничего другого не осилил.

Пф. У меня обратное ощущение в вашей неосиляторстве. Единственно когда lenght удобнее '\0', это когда в таком странном входном алфавите представлены все символы. Если б не его желание посоревноваться скоростью с языками, где накидать указателей на память со всосанным файлом весьма проблематично (ещё надо было б продемонстрировать, как он это представляет с tty-шным stdin), то при getchar-ах и нет никакой сложности вставить любой неалфавитный признак конца токена, всё равно память под токены будет ваша, а не псевдо-mmap.

Исходная версия vodz, :

Возвращает текущий токен.

А что по вашему надо было возвращать? Указатель на сдвинутый буфер файла? Да не вопрос. Но речь то про юзабельность.

Он засунул возврат в общий контекст,

И? При получении следующего всё предыдущее он теряет.

Это не значит, что из этого контекста нельзя писал в массив.

Этот массив структур с полями указателем и длинной надо ещё создать, расширять и вдруг окажется, что та структура которую он сейчас завел нафиг не нужна, так как применение её только для того, чтобы один параметр передавать. :)

zero-terminating - ты добавил только потому, что ничего другого не осилил.

Пф. У меня обратное ощущение в вашей неосиляторстве. Единственно когда lenght удобнее '\0', это когда в таком странном входном алфавите представлены все символы. Если б не его желание посоревноваться скоростью с языками, где накидать указателей на память со всосанным файлом весьма проблематично (ещё надо было б продемонстрировать, как он это представляет с tty-шным stdin), то при getchar-ах и нет никакой сложности вставить любой неалфавитный признак конца токена, всё равно память под токены будет ваша, а не псевдо-mmap.

map[(uint8_t)(*(str))]

То что вы говорите «это не», никак не меняет истины - это неосиляторство указателей.