Как преобразовать первые 15 символов в массиве символов в std :: string в C ++?

0

Я знаю, что я могу преобразовать массивы символов в std::string используя: string str(array);

Но возникает вопрос: мог ли он принять его и преобразовать в строку? (например, первые 15 символов)

Кстати, мой массив определен в стеке.

Благодарю.

Теги:
string
arrays

2 ответа

7

Вы используете конструктор, который принимает два итератора (указатели, которые разлагают массивы, моделируют итераторы произвольного доступа):

std::string str(array, array+15);

Таким образом, вы можете взять любую часть массива, а не только первые 15 символов.

  • 0
    Ударь меня на 4 секунды, и у тебя есть объяснение. +1
0

Если у вас есть массив char, используйте конструктор std::string, который принимает 2 итератора:

std::string str(arr, arr + 15);

Если у вас уже есть экземпляр std::string, используйте std::string::substr:

std::string str("my long string full of words");
std::cout << "'" << str.substr(0,15) << "'";

выходы: 'my long string '

  • 1
    Я думаю, что OP имеет массив char

Ещё вопросы

Сообщество Overcoder
Наверх
Меню