thessk 0 Denunciar post Postado Novembro 17, 2016 É um problema simples, o exercício é apenas criar um registro e lê-lo. typedef struct registro{ char nome[tam], end[tam]; int id; }registro; int main(){ registro pessoa; printf("Digite um nome: "); gets(pessoa.nome); printf("Digite um endereço: "); gets(pessoa.end); printf("Digite uma idade: "); scanf("%d", pessoa.id); printf("\nNome: %s\nIdade: %d\nEndereço: %s", pessoa.nome, pessoa.id, pessoa.end); O programa lê, mas não mostra o que foi digitado, alguém poderia ajudar? Digite um nome: aaaDigite um endereço: bbbDigite uma idade: 12Falha de segmentação (imagem do núcleo gravada) Compartilhar este post Link para o post Compartilhar em outros sites
Nefisto 0 Denunciar post Postado Novembro 17, 2016 pessoa.nome é um endereço, ja pessoa.id nao, entao o & é necessario. Substitua a linha: scanf("%d", pessoa.id); Por scanf("%d", &pessoa.id); E é claro q o define "tam" precisa ser grande o suficiente. Espero ter ajudado Compartilhar este post Link para o post Compartilhar em outros sites
Nefisto 0 Denunciar post Postado Novembro 17, 2016 pessoa.nome é um endereço, ja pessoa.id nao, entao o & é necessario. Substitua a linha: scanf("%d", pessoa.id); Por scanf("%d", &pessoa.id); E é claro q o define "tam" precisa ser grande o suficiente. Espero ter ajudado Compartilhar este post Link para o post Compartilhar em outros sites
thessk 0 Denunciar post Postado Novembro 17, 2016 Obrigado cara, dúvida respondida. Compartilhar este post Link para o post Compartilhar em outros sites