Существуют низкоуровневые строки ("С-строки"), которые не имеют высокоуровневого поведения, которое вы, вероятно, ожидаете от других языков. Когда вы вводите строковый литерал (в «кавычках»), вы создаете один из следующих типов строк:
http://en.wikipedia.org/wiki/C_string_handling
В C++ первое, что делают люди, — это передают эту низкоуровневую строку конструктору std::string
, чтобы создать экземпляр класса с более удобным интерфейсом, к которому вы привыкли.
http://www.cplusplus.com/reference/string/string/
Поскольку C++ построен на основе, очень похожей на C, важно понимать, как работают строки в стиле C. В то же время профессиональная/идиоматическая программа на C++ не должна использовать такие функции, как strcmp
. Для интересного исследования различий между программированием в стиле C и программированием в стиле C++, проверьте это:
Изучение стандарта C++ как нового языка (PDF), автор Бьярн
person
HostileFork says dont trust SE
schedule
29.04.2012
name
— это не строка, а массив символов. - person Mr Lister   schedule 29.04.2012