|  | объявление string s; ??? - до 2Гбт |
| | {noformat} объявление |
| string s; ??? - до 2Гбт |
| |
| cin >> s; // Если строка не содержит пробелов |
| getline(cin,s); // Если строка содержит пробелы |
| |
| d=s.length(); // Длина строки - количество символов в ней |
| |
| Над строковыми переменными возможно выполнение следующих операций, |
| функций и процедур. |
| |
| Операции: |
| |
| сравнения ( ==(равно) !=(не равно) < <= > >=) |
| конкатенации + s4=s1+s2+s3; { объединение строк } |
| |
| Функции: |
| |
| d =s.length() // вернуть длину строки |
| s2=s1.substr(Index,Count) // выделить подстроку из строки s1 |
| с позиции Index (нумерация с нуля!!!) |
| Count символов |
| |
| s.erase(Index,Count) // удалить из строки s, с позиции Index, Count символов |
| // результат оставить в строке s |
| |
| s1.insert(Index,s2); // вставить в строку s1 c позиции Index строку s2 |
| |
| p=s1.find(s2) // найти позицию первого вхождения строки s1 в строку s2 |
| // то есть |
| // занести в переменную p номер первой позиции, |
| // начиная с которой строка s2 находится в строке s1 |
| // если подстроки s2 нет в строке s1, p=-1 |
| |
| char c; |
| int k; |
| |
| c='a'; |
| k=c; // получить код символа |
| |
| k='b'; |
| c=k; // получить символ по коду |
| |
| k=c-'0'; // получить цифру по её символу |
| |
| c=toupper(c); // только для латинских букв |
| // маленький символ превратить в большой |
| |
| c=tolower(c); // только для латинских букв |
| // большой символ превратить в маленький |
| |
| string s; |
| int x; |
| |
| x=atoi(s.c_str()) // преобразовать строку s в число x |
| s=to_string(x); // преобразовать число x в строку s |
| |
| |
| |
| s[i]='a'; // Замена символа строки |
| |
| // Формирование строки добавлением символов |
| d=s.length(); |
| p=""; // пустая строка |
| for (i=0; i<d; i++) p=s[i]+p; // переворачивание строки |
| // p=s[i]+'*'; добавление символа '*' после каждого символа |
| |
| |
| sort(s.begin(),s.end()); // сортировка строки s |
| |
| isdigit(с) // является ли символ с цифрой (функция) |
| isupper(c) // является ли символ с большой латинской буквой (функция) |
| islower(c) // является ли символ с маленькой латинской цифрой (функция) |
| |
| |
| cin >> n >> m; getline(cin,s); // "проглатывание" до конца строки после ввода чисел |
| |
| p=s.find_last_of(с); // позиция последнего вхождения символа c в строку s |
| |
| for (i=0; i<d-2; i+=3) // обрабатываем каждое третье i с нуля: 0,3,6,9 ... |
| |
| if (i%2) // проверяем i на нечётность (остаток от деления на 2 не равен 0) |
| |
| |
| int a[10]={5, 7, 4, 2, 8, 6, 1, 9, 0, 3}; // массив констант |
| |
| int steps[8][2] = {{1,-2},{1,2},{-1,-2},{-1,2}, // двумерный массив констант |
 | | {2,-1},{2,1},{-2,-1},{-2,1}}; |
| |
| |
| http://ru.cppreference.com/w/cpp/string/basic_string/insert |
| всё про строки и c++ |
| | {2,-1},{2,1},{-2,-1},{-2,1}};{noformat} \\ |