- cin 不会清楚输入缓存中的任何跳过字符,注意使用 cin.ignore(); getline 会读所有字符直到遇到换行符(跳过结束,并且从缓冲区中删除). getchar 会读到\n.  
 - tolower可以直接放入getchar得返回值(那个char) 
 - transform(in.begin(),in.end(),in.begin(),::tolower); 这种可以转换字符串为小写字符. 
 
 #include<iostream>
#include<set>
#include<map>
#include<vector>
#include<string>
#include <algorithm>
#include <cctype>
using namespace std;
int main() {
    string in;
    getline(cin,in);
    char a = tolower(getchar());
    if(!in.size()) return 0;
    transform(in.begin(),in.end(),in.begin(),::tolower);
    int map[128]={0};
    for(int i =0; i< in.size();i++){
        map[in[i]]++;
    }
    cout<<map[a]<<endl;
    return 0;
}