Если мы говорим конкретно о std::string
, то length()
возвращает количество байтов.
Это потому, что std::string
- это basic_string
из char
с, а стандарт C ++ определяет размер одного char
как ровно один байт.
Обратите внимание, что в стандарте не указано, сколько битов в байте, но это совсем другая история, и вам, вероятно, все равно.
РЕДАКТИРОВАТЬ: Стандарт говорит, что реализация должна предоставить определение для CHAR_BIT
, которое говорит, сколько битов в байте.
Кстати, если вы идете по дороге, где вас волнует, сколько битов в байте, вы можете прочитать this .