How to Avoid strlen Breaking Multibyte Text
strlen counts bytes, not characters.

How to Avoid strlen Breaking Multibyte Text
strlen counts bytes, not characters.

[Перевод] strlcpy, или как CPU противоречат здравому смыслу
Один из моих старых постов о strlcpy недавно вызвал обсуждения на различных форумах. Вероятно, с этим как-то связан выпуск новой версии POSIX. Многие авторы приводили один контраргумент, который я слышал и раньше: «В общем случае, когда исходная строка умещается в конечный буфер, strlcpy будет обходить строку только один раз, а strlen + memcpy будут обходить её дважды». Под этим аргументом скрывается допущение о том, что однократный обход строки выполняется быстрее. И, честно говоря, это вполне разумное допущение. Но справедливо ли оно? Об этом мы и поговорим в статье.
“Parsing Can Become Accidentally Quadratic Because Of Sscanf”, Rapid YAML (https://github.com/biojppm/rapidyaml/issues/40).
Via HN: https://news.ycombinator.com/item?id=26302744
#RapidYAML #Parsing #AlgorithmicComplexity #Compiler #Programming #Strlen #YAML #RYML