История изменений
Исправление Stanson, (текущая версия) :
c_str это не геттер, это конвертер из std::string в C строку. Более того, strcmp сравнивает тупо до ‘\0’. Так что даже если c_str тебе вернёт «AB\0CD\0» то strcmp сочтёт эту строку заканчивающейся на первом ‘\0’.
ЗЫ: Сраные кавычки. Этот дебилизм когда-нибудь уже починят? Или тут толпы работников типографий тусуются, а программисты так, случайно зашли?
Исходная версия Stanson, :
c_str это не геттер, это конвертер из std::string в C строку. Более того, strcmp сравнивает тупо до ‘\0’. Так что даже если c_str тебе вернёт «AB\0CD\0» то strcmp сочтёт эту строку заканчивающейся на первом ‘\0’.