Есть ли все равно, чтобы показать, что символ s появляется 5 раз в строке, есть ли какая-либо функция для сортировки символа, и покажите нам, что символ появляется 5 или 6 раз в строке.
#include<iostream>
#include<string>
int main(){
using namespace std;
string a="hello how are you"
//now i want to show the l character appears several time.
//and i need help here.
system("pause");
}
Просто продолжайте подсчет с помощью указателя до достижения нулевого символа и продолжайте увеличивать целое число при успешном сравнении.
#include<iostream>
#include<string>
int main(){
using namespace std;
string a="hello how are you";
char *p = &a[0];
int c = 0;
do
{
if(*p == 'l')
c++;
}while(*p++);
cout << c;
}
Вы можете использовать std :: count
int lcount = std::count(a.begin(), a.end(), 'l');
Вы можете пройти через любой контейнер, включая строку, и делать с ней что угодно. Вы можете подсчитать, сколько экземпляров каждого символа. Возможно, вы захотите рассмотреть игнорирование пробелов.
std::string a("hello how are you");
std::map<char,int> count;
for(auto c : a)
{
++count[c];
}