Language: C++

#include<iostream>
#include<string>
#include <algorithm>
using namespace std;
int main()
{
	string str;
	int alphabet[26] = { 0 };
	getline(cin, str);//??????????????????????????\???
	transform(str.begin(), str.end(), str.begin(), tolower);
	for (int i = 0; i < str.size(); i++) {
		alphabet[str[i] - 'a'] += 1;
	}
	cout << "a : " << alphabet['a' - 'a'] << endl;
	cout << "b : " << alphabet['b' - 'a'] << endl;
	cout << "c : " << alphabet['c' - 'a'] << endl;
	cout << "d : " << alphabet['d' - 'a'] << endl;
	cout << "e : " << alphabet['e' - 'a'] << endl;
	cout << "f : " << alphabet['f' - 'a'] << endl;
	cout << "g : " << alphabet['g' - 'a'] << endl;
	cout << "h : " << alphabet['h' - 'a'] << endl;
	cout << "i : " << alphabet['i' - 'a'] << endl;
	cout << "j : " << alphabet['j' - 'a'] << endl;
	cout << "k : " << alphabet['k' - 'a'] << endl;
	cout << "l : " << alphabet['l' - 'a'] << endl;
	cout << "m : " << alphabet['m' - 'a'] << endl;
	cout << "n : " << alphabet['n' - 'a'] << endl;
	cout << "o : " << alphabet['o' - 'a'] << endl;
	cout << "p : " << alphabet['p' - 'a'] << endl;
	cout << "q : " << alphabet['q' - 'a'] << endl;
	cout << "r : " << alphabet['r' - 'a'] << endl;
	cout << "s : " << alphabet['s' - 'a'] << endl;
	cout << "t : " << alphabet['t' - 'a'] << endl;
	cout << "u : " << alphabet['u' - 'a'] << endl;
	cout << "v : " << alphabet['v' - 'a'] << endl;
	cout << "w : " << alphabet['w' - 'a'] << endl;
	cout << "x : " << alphabet['x' - 'a'] << endl;
	cout << "y : " << alphabet['y' - 'a'] << endl;
	cout << "z : " << alphabet['z' - 'a'] << endl;


	return 0;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:10:18: error: no matching function for call to 'transform(std::__cxx11::basic_string<char>::iterator, std::__cxx11::basic_string<char>::iterator, std::__cxx11::basic_string<char>::iterator, <unresolved overloaded function type>)'
   10 |         transform(str.begin(), str.end(), str.begin(), tolower);
      |         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/algorithm:61,
                 from a.cc:3:
/usr/include/c++/14/bits/stl_algo.h:4209:5: note: candidate: 'template<class _IIter, class _OIter, class _UnaryOperation> _OIter std::transform(_IIter, _IIter, _OIter, _UnaryOperation)'
 4209 |     transform(_InputIterator __first, _InputIterator __last,
      |     ^~~~~~~~~
/usr/include/c++/14/bits/stl_algo.h:4209:5: note:   template argument deduction/substitution failed:
a.cc:10:18: note:   couldn't deduce template parameter '_UnaryOperation'
   10 |         transform(str.begin(), str.end(), str.begin(), tolower);
      |         ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/14/bits/stl_algo.h:4247:5: note: candidate: 'template<class _IIter1, class _IIter2, class _OIter, class _BinaryOperation> _OIter std::transform(_IIter1, _IIter1, _IIter2, _OIter, _BinaryOperation)'
 4247 |     transform(_InputIterator1 __first1, _InputIterator1 __last1,
      |     ^~~~~~~~~
/usr/include/c++/14/bits/stl_algo.h:4247:5: note:   candidate expects 5 arguments, 4 provided
In file included from /usr/include/c++/14/algorithm:86:
/usr/include/c++/14/pstl/glue_algorithm_defs.h:156:1: note: candidate: 'template<class _ExecutionPolicy, class _ForwardIterator1, class _ForwardIterator2, class _UnaryOperation> __pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator2> std::transform(_ExecutionPolicy&&, _ForwardIterator1, _ForwardIterator1, _ForwardIterator2, _UnaryOperation)'
  156 | transform(_ExecutionPolicy&& __exec, _ForwardIterator1 __first, _ForwardIterator1 __last, _ForwardIterator2 __result,
      | ^~~~~~~~~
/usr/include/c++/14/pstl/glue_algorithm_defs.h:156:1: note:   candidate expects 5 arguments, 4 provided
/usr/include/c++/14/pstl/glue_algorithm_defs.h:162:1: note: candidate: 'template<class _ExecutionPolicy, class _ForwardIterator1, class _ForwardIterator2, class _ForwardIterator, class _BinaryOperation> __pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator2> std::transform(_ExecutionPolicy&&, _ForwardIterator1, _ForwardIterator1, _ForwardIterator2, _ForwardIterator, _BinaryOperation)'
  162 | transform(_ExecutionPolicy&& __exec, _ForwardIterator1 __first1, _ForwardIterator1 __last1, _ForwardIterator2 __first2,
      | ^~~~~~~~~
/usr/include/c++/14/pstl/glue_algorithm_defs.h:162:1: note:   candidate expects 6 arguments, 4 provided