Код должен посчитать сколько введен каждый символ в строке, строку сам задаешь
unsigned count[256];
memset(count, 0, sizeof(count));
// Считаем количество символов
for(int i=0; a[i] != '\0'; ++i) {
++count[a[i]];
}
// вывод
for(int i=0; i < 256; ++i) {
if(count[i] > 0)
printf(" %c=%d\n ", (char)i, count[i]);
}
Похоже, что служебные символы в переменных цикла (в отличие от таковых в аргументах командных файлов и переменных окружения) экранирования и не требуют
Какую функцию должен выбрать линковщик, если у него есть несколько подходящих по сигнатуре? Никакую он не будет выбирать, он сообщит об ошибке и закончит работу.
Нужно или переименовывать соответствующие символа, либо то что предложил Евгений Шатунов