#include #include #include #define MAX_NOME 50 /* Tamanho máximo em bytes para um nome */ int main () { char nome_pessoa[MAX_NOME]; char *saudacao = "Olá, "; char *mensagem; int tam_mensagem; puts("Digite o seu nome: "); /* Lê da entrada padrão uma linha de tamanho máximo MAX_NOME em bytes */ fgets(nome_pessoa, MAX_NOME, stdin); tam_mensagem = strlen(saudacao) + strlen(nome_pessoa); mensagem = (char *) malloc(tam_mensagem + 1); /* 1 byte adicional para o '\0' */ /* Copia a string em saudacao no espaço alocado para a string mensagem */ strcpy(mensagem, saudacao); /* Concatena as strings mensagem e saudacao, armazenando o resultado no espaço alocado para a string mensagem */ strcat(mensagem, nome_pessoa); /* Exibe a mensagem de saudação! */ puts(mensagem); return 0; }