O que aconteceu quando não incluímos '\ 0' no final da string em C?

Em C, quando eu inicializo minha matriz desta maneira:

char full_name[] = {
    't', 'o', 'a', 'n'
};

e imprima-o comprintf("%s", full_name);

e execute-o comvalgrind Eu tenho erro

O valor não inicializado foi criado pela alocação de pilha

Por que isso acontece?