No código a seguir eu faço um printf em um array de duas posições mas apareceuma terceira com um smile. Saberia me dizer o porquê? A variavel tem apenas 2 posições. Anexo o print da tela do command com o smile.
#include <stdio.h>
void potencia(char texto[2], int* numero) { texto[0] = 'C'; texto[1] = 'D';
(*numero)++;
printf("letra dentro da funcao %s \n", texto);
printf("numero dentro da funcao %d \n", *numero);
}
int main() {
int numero = 1;
char texto[2];
texto[0] = 'A';
texto[1] = 'B';
printf("letra antes da funcao: %s \n", texto);
printf("numero antes da funcao: %d \n", numero);
// o & utiliza com ponteiros, na funcao o ponteiro vem com * na frente
potencia(texto, &numero);
printf("letra depois da funcao %s \n", texto);
printf("numero depois da funcao %d \n", numero);
}