Форум программистов, компьютерный форум CyberForum.ru

Удалить слово из строки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ как перейти в начало цикла ? http://www.cyberforum.ru/cpp-beginners/thread665394.html
Подскажите как сделать так, когда введешь 0 как второе число, опросило продолжение программы(то что в конце), ибо так краш просле ввода 0.Просьба сильно не ругать , ибо новичек :-#include <iostream> using namespace std; int main (){ int a,b; do { cout<<"Enter two nums. \n First: "; cin>>a; cout<<"\n Second: "; cin>>b;
C++ Вычисление объема сыпучего вещества Всем доброго время суток. В баллоне под поршнем с идеальным газом находится сыпучее вещество. Написать программу для вычисления объема сыпучего вещества V, если известно, что при объеме под поршнем {V}_{1} давление газа равно {P}_{1}, а при объеме под поршнем {V}_{2} давление газа равно {P}_{2}. Использовать соотношение {P}_{1}*({V}_{1} - V) = {P}_{2}*({V}_{2} - V). С помощью тернарного... http://www.cyberforum.ru/cpp-beginners/thread665392.html
Файлы в С++(программа) C++
Помогите пожалуйста с небольшой программкой на файлы в с++ вот у меня есть код: #include "stdafx.h" #include <iostream> #include <fstream> using namespace std; void main(void)
указание пути к файлу C++
Столкнулся с проблемой указания пути к файлу. Написал функцию. Вызываю её так: readFile("test.txt",stran,&n); в моем случае файл лежит в папке с проектом. в результате программа зацикливается на считывании. однако писал и точный путь. результат - ошибка чтения и выход. void readFile (char* name,tovar* stran, int* n ) {
C++ Как работает header http://www.cyberforum.ru/cpp-beginners/thread665376.html
Объясните как работает функция header в с++. То есть включить в библиотеку свой файл, но как? И как он будет работать, то есть его нужно будет объявлять где то в функции?
C++ Изменить цикл for на цикл do-while помогите передать программу с цикла FOR в цикл DO-WHILE #include <math.h> #include <iostream> #include <conio.h> using namespace std; void main(void) { float a, x, s; подробнее

Показать сообщение отдельно
cmath
Модератор
2433 / 1652 / 133
Регистрация: 11.08.2012
Сообщений: 3,294
Завершенные тесты: 5
07.10.2012, 17:44
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// удаляет из строки str n символов, идущих после символа с номером pos
// ничего не делает, если pos + n больше числа символов в строке
// для работы функции нужно подключить string.h 
//чтобы удалить n символов надо будет написать <название строки>=Erase(<название строки>,<позиция от начала строки>, n)
char* Erase(char *str, int pos, int n) {
    char *buff;
    int i = 0, len;
    len = strlen(str); // нашли длину строки
 
             if (len >= pos + n)
    {
        buff = new char[len - n];
        while(i != pos) // сдвигаем "манипулятор" i до положения pos
        {
            buff[i] = str[i]; // при этом копируем содержимое строки в буфер
            i++;
        }
        while(i != len - n) // просто копируем символы из строки в буфер, пропуская n штук
        {// которые идут после pos
            buff[i] = str[i+n];
            i++;
            if(i == len - n)buff[i] = '\0'; // обрезаем строку в буфере.
        }
        str = buff; // копируем содержимое буфера в строку      
    }
    return str;// возвращаем строку
}
чтобы стереть конкретное слово напишите функцию, которая найдёт его позицию в строке.
З.Ы. delete нету потому, что при выходе из функции всё объявленное там "барахло" высвобождается автоматически. (кст использование delete у меня приводило к сообщению о нехорошем блоке памяти
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru