|
C++. Библиотека STL
Класс string
Класс string предназначен, естественно, для работы со строками. Он находится в пространстве имен std и для его использования надо подключить string.
Вот пример использования:
#include <iostream>
#include <string>
using namespace std;
void main(){
string s0 = "abcde";
string s1 = " fg";
// Конкатенация строк.
string s = s0 + s1;
cout<<s<<"\n";
// Получаем символ на определенном месте.
char ch0 = s0.at(1);
cout<<ch0<<"\n";
char ch1 = s0[3];
cout<<ch1<<"\n";
// Выясняем, не пустая ли строка.
if (s0.empty()){
cout << "String is empty"<<"\n";
}
else{
cout << "String isn't empty"<<"\n";
}
// Обмен значения двух строк.
swap(s0, s1);
// Присваиваем и сравниваем 2 строки.
s1 = s0;
if(s1 == s0){
cout << "Strings are equal"<<"\n";
}
else{
cout << "Strings are not equal"<<"\n";
}
// Чтение введенной с клавиатуры строки.
getline(cin, s1);
cout<<s1;
// Получение длины строки.
cout<<s1.length();
}
Как вы видите, работать со строками через класс string достаточно удобно - вы можете делать конкатенацию (сложение) строк с помощью обычного оператора +, можете брать символ в определенном месте строки с помощью оператора [] (или другим способом - с помощью метода at), можете использовать привычные операторы =, ==,!= для присваивания и сравнения строк. Также имеются методы для получения длины строки, для выяснения, не пустая ли это строка и др. Обратите внимание также на весьма полезный метод getline, который позволяет прочитать строку из определенного потока (с клавиатуры в нашем примере).
#include <stdlib.h>
#include<iostream>
#include<string>
/*
*
*/
int main(int argc, char** argv) {
using namespace std;
string s1("123");
string s2("456");
string s3=s1+s2;
s3+="789";
cout<<s3<<endl;
cout<<"lengt="<<s3.length()<<endl;
cout<<"size="<<s3.size()<<endl;
cout<<"capacity="<<s3.capacity()<<endl;
cout<<"find 67="<<s3.find("67")<<endl;
cout<<"find 1="<<s3.find("1")<<endl;
cout<<"find 6="<<s3.at(s3.find("6"))<<endl;
cout<<"erase(2,2)="<<s3.erase(2,2)<<endl;
return (EXIT_SUCCESS);
}
Дата добавления: 2015-11-04; просмотров: 25 | Нарушение авторских прав
<== предыдущая лекция | | | следующая лекция ==> |
Stopping by Woods on a Snowy Evening | | | Тип String (строка) в Pascal-ABC широко используется для обработки текстов. Этот тип является стандартным и во многом похож на одномерный массив символов Array [0..N] of Char. Значение N |