Мое назначение говорит, что я должен написать функцию с именем removeChar, которая;
Принимает 4 ввода: целое число, строка str, строка s и символ c, но ничего не возвращает.
Находит число всех вхождений c в с (как заглавные, так и строчные (подсказка: вы можете использовать коды ASCII для сравнения)) и сохраняет в num
Копирует обрезанную строку в str
Запишите в тот же файл функцию main (), содержащую серию тестов для демонстрации правильное поведение removeChar ().
Но все операции печати должны выполняться из функции main (). У меня есть этот код:
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
string removeChar(int num, string s, string str, char c);
int main()
{
string s = "asdfasdf";
s = removeChar(1, "a", "hello", 'h');
cout << s;
}
string removeChar(int num, string s, string str, char c)
{
int i;
for (i = 0; i < s.length(); i++)
if (int(s.at(i)) == int(c))
num = int(c);
str.erase(std::remove(str.begin(), str.end(), (char)num), str.end());
return str;
}
Он не работает, и даже если бы он работал, мне нужна функция void.