Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- // С помощью этой функции мы узнаем размер размер строки. Было бы там с хуями у парней, соглы? (у него шиза походу, звони 911)
- unsigned int sizeStr(char*); // (в России 911 же?)
- // Ну а это главная функция собственно
- void remove(char*, unsigned int, unsigned int);
- int main() {
- // Создаем переменную (указатель на char (в каком то смысле массив)) для хранения строки
- char* str;
- // Записываем в нее нашу строчку (уииии)
- cout << "Enter string: "; cin >> str;
- unsigned int startIndex;
- unsigned int count;
- // и значенияяяяяяя
- cout << "Enter start index: "; cin >> startIndex;
- cout << "Enter count del symbol: "; cin >> count;
- // Используем нашу функцию (тудудун)
- remove(str, startIndex, count);
- // и Выводим эту строчку нашу :3
- cout << str << endl;
- return 0;
- }
- unsigned int sizeStr(char* str) {
- // Эта штучка считает сколько символов до
- unsigned int count = 0;
- // Эта штучка будет увеличивать счетчик (count), пока не встретит конец строки
- // который обозначает символов, равным 0
- while (str[count] != 0) { count++; }
- return count;
- }
- void remove(char* str, unsigned int startIndex, unsigned int count) {
- // Размер строки
- unsigned int size_str = sizeStr(str);
- if (startIndex >= size_str) { /* мы ничего не делаем тогда, лол */ } else
- // Проверка на случай, если после удаленного куска нету символов
- if (startIndex + count >= size_str) {
- str[startIndex] = 0; // мы проста ставим индекс окончания строки, и все)
- } else
- // Самый сложный случай - когда после удаления куска символов - после
- if (startIndex + count <= size_str) {
- for (unsigned int i = startIndex; size_str - count > i; i++) {
- str[i] = str[i + count];
- }
- str[size_str - count] = 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement