Eu entendi que a variável tentativas dentro do main tem um endereço de memoria diferente da que estava na função, por isso o incremento não estava dando certo, sendo necessário o uso de ponteiros.
Sendo que não entendi pq o Array usado dentro da função, chutes[26], que é alterado dentro da função, estava alterando o array chutes[26] do main.
Alguém sabe explicar?
Code:
void chuta (char chutes[26], int* tentativas){
char chute;
scanf (" %c", &chute);
chutes[(*tentativas)] = chute;
(*tentativas)++
}