Я попытался сравнить нижний индекс строки со строкой с пробелом ("") в C ++, но он вернул ошибку сравнения указателя. Теперь, когда я пытаюсь сравнить "" с "', очевидно, что это не равно. Приведенный ниже код должен продолжить для l oop, когда определенный нижний индекс строки равен пробелу.
Если я сравниваю подстроку с "", я получаю эту ошибку: 16:22: error: ISO C++ forbids comparison between pointer and integer [-fpermissive]
Обратите внимание, что когда я ввожу пробел во входную переменную, он должен его сравнить.
// Example program
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main()
{
string input;
vector<int> letters (26,0);
vector<char> alpha = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
bool flag;
cin >> input;
for(int i = 0; i < input.size();i++){
if(input[i]==' '){
continue;
}
cout << i;
for(int j = 0; j < alpha.size(); j++){
if(input[i]==alpha[j]){
letters[j] ++;
}
}
}
for (int i = 0; i < letters.size();i++){
if(letters[i] > 0){
cout << alpha[i] << ": " << letters[i] << endl;
}
}
}
Есть ли способ сравнить пробел со строкой?