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

Работа со строками (удаление из строки указанного символа) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ File Ripper http://www.cyberforum.ru/cpp-beginners/thread804267.html
Всем привет. Заинтересовала тема для поиска файлов внутри файла. В данном случае интересует поиск только MPEG Layer 3 (т.е. mp3). Как его искать - без понятия. Нужна программа типа HyperRipper или MultiExtractor. P.S. Как я понял, mp3 нужно искать по фреймам, но как правильно - хз.. Выручайте :(
C++ Работа с бинарными файлами (программка дважды записывает последнее число) Добрый день, помогите пожалуйста с такой ситуацией: написал програмку для заполнения бинарного файла рандомными числами (их количество вводится в начале программы): #include <iostream> #include <fstream> #include <time.h> using namespace std; void random(int N){ ofstream file("resource.bin", ios::binary|ios::out); srand(time(NULL)); http://www.cyberforum.ru/cpp-beginners/thread804260.html
Цикл с предусловием C++
#include <iostream> int main() { int s = 0; for (int i = 0; i <= 8; i++) { for (int j = 0; j <= 6; j++) { for (int k = 0; k <= 4; k++) { if (3 * i + 4 * j + 6 * k == 24) { std::cout << "3: " << i << " 4: " << j << " 6: " << k << std::endl; s++;
Списки. Стеки. Очереди C++
Квадрат разбит на {4}^{k} равновеликих квадратных клеток. Квадрат перегибается поочередно относительно вертикальной (правая половина подкладывается под левую) и горизонтальной (нижняя половина подкладывается под верхнюю) оси симметрии до тех пор, пока все клетки не будут расположены друг под другом. Требуется занумеровать клетки исходного квадрата таким образом, чтобы в результате выполнения...
C++ MPI и scanf в С++ http://www.cyberforum.ru/cpp-beginners/thread804252.html
Вобщем я делаю параллельную программу. Все процессы в этой программе должны узнать некоторое целое число X, которое пользователь вводит с клавиатуры. Я пока знаю только один способ это осуществить - некоторый один процесс (например с рангом 0) получает это число с помощью scanf у пользователя, а затем шлет его в сообщениях всем остальным процессам (см. код ниже). Вопрос - можно ли как-то...
C++ Ошибка в задаче про массивы Написал прогу,строго не судите,но какой то косяк здесь не знаю даже где,она должна Найти сумму элементов массива, которые находятся между максимальным и минимальным числами. В сумму включить и оба этих числа.Помогите плиз ошибку найти #include <stdio.h> #include <iostream> #include <conio.h> #include<math.h> using namespace std; подробнее

Показать сообщение отдельно
KpuB
0 / 0 / 0
Регистрация: 09.03.2013
Сообщений: 3
10.03.2013, 20:41  [ТС]     Работа со строками (удаление из строки указанного символа)
Удаление 1 символа работает на отлично, спасибо!
А вот удаление из 1 строки всех символов содержащихся во второй строке что-то не пашет. (Не могу ввести эти строки)
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <cstring>
#include <iostream>
using namespace std;
char* del_char(char* s, char c);
 
int main()
{   
    int r=0;
    char chr        = '\0';
    char text[1024] = {0};//Выделили память под строку
    cout<<"Enter text (less than 1024 chars): ";
    cin.getline(text, 1024);//Ввод строки с пробелами
    cout<<"Enter char to delete from text   : ";
    cin>>chr;
    cout<<"Text after deliting char : "<<strcpy(text, del_char(text, chr))<<endl;
    cout<<"Enter char to delete from text   : ";
 
 
 
    int size;
    char text1[1024] = {0};//Выделили память под 1 строку
 
    char text2 [1024] = {0};//Выделили память под 2 строку
    cout<<"Enter fist string (less than 1024 chars):    ";
    cin.getline (text1,1024);
    cout<<"Enter second string (less than 1024 chars):     ";
    cin.getline(text2, 1024);//Ввод 2 строки с пробелами
    size=strlen(text2);
    while (r<size-1)
    {
        char lol;
    lol=text2[r];
    strcpy(text1, del_char(text1,lol));
    r++;
    } 
 
    cout<<"Text:   "<<text1;
 
    system ("pause");
    return 0;
}
 
char* del_char(char* s, char c)
{
    char * buf = strchr(s, c);
    while( buf )
    {
        if(buf + 1)
            strcpy(buf, buf + 1);
        else
            buf[0] = '\0';
        buf = strchr(buf, c);
    }
    return s;
    
}
 
Текущее время: 02:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru