Falha na segmentação com strcpy () [duplicado]

Esta pergunta já tem uma resposta aqui:

Por que recebo uma falha de segmentação ao escrever em uma string inicializada com "char * s", mas não "char s []" 17 respostas

Isso funciona

int main()
{      
    char *t = "Hello";
    t = "World";
    printf("%s", t);
}

Mas isso gera uma falha de segmentação:

int main()
{   
    char *t = "Hello";   
    strcpy(t, "World"); // the only difference
    printf("%s", t);
}

Por quê

questionAnswers(7)

yourAnswerToTheQuestion