Новости

Строки C++

Строки C++

Здравствуйте! В сегодняшней статье мы поговорим о строковом типе данных в С++. И прежде вспомним, что строка используется для хранения текста. Переменная типа string, в С++, содержит коллекцию символов, заключенных в двойные кавычки.

Давайте создадим переменную с типом string и присвоим ей значение. И чтобы код сработал, в С++ необходимо добавить в исходный код заголовочный файл библиотеки string.


// библиотека для ввода и вывода информации
#include <iostream>
#include <string>

using namespace std;

int main() {
  string site = "Myrusakov";
  cout << site;
  cin.get(); // ожидание ввода символа
  return 0;
}

Конкатенация строк С++.

Конкатенация — есть операция сцепления двух строк. Она производится оператором +.

#include <iostream>
#include <string>
using namespace std;
 
int main () {
  string sitename = "Myrusakov ";
  string domen = ".ru";
  string site = sitename + domen;
  cout << site;
  return 0;
}

В приведенном выше примере мы добавили пробел после имени, чтобы создать пробел между переменными при выводе. Однако вы также можете добавить пробел в кавычках (» » или ' ').:


  string sitename = "myrusakov ";
  string domen = ".ru";
  string site = sitename + "" + domen;

Так как строки в C++ являются объектами, они содержат методы, позволяющие выполнять конкретные операции над строками. В качестве примера возьмем метод append() позволяющий выполнить конкатенацию.

string site = sitename.append(domen);

Основное различие между обоими строковыми операциями в том что метод append() намного быстрее обычного +. Следует помнить, что попытка сложить строку с числом приведет к ошибке.

Для получения длины строки используем функцию length() или size().


#include <iostream>
#include <string>
using namespace std;

int main() {
  string text = "myrusakov.ru";
  cout << <<"Size" << text.size() << "n";
  cout << "Length" << text.length();
  cin.get();
  return 0;
}

Вы можете получить доступ к символам в строке, обратившись к ее порядковому номеру в квадратных скобках [].


#include <iostream>
#include <string>
using namespace std;

int main() {
  string str = "myrusakov";
  cout << str[0];
  return 0;
}

// вывод
// m

Изменение символов Строки

Чтобы изменить значение определенного символа в строке, обратитесь к номеру индекса и используйте одинарные кавычки:


  string str = "myrusakov";
  str[0] = "M";
  cout << str;
  return 0;

Ввод строки пользователем

Для обработки пользовательского ввода используется оператор >> и ключевое слово cin. Но данный вариант имеет ограничения, так как cin рассматривает пространство между словами как окончание и поэтому выведет только первое слово. Для подобных случаев используем функцию getline(), с двумя параметрами.

#include <iostream>
#include <string>
using namespace std;

int main() {
  string name;
  cout << "site name: ";
  getline (cin, name);
  cout << "Site name is: " << name;
  return 0;
}

Таким образом, мы рассмотрели строковой тип данных string в С++ и его основные методы.

Источник

Статьи по теме

Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Back to top button