Matheus21 0 Denunciar post Postado Maio 9, 2013 Boa tarde, Estou fazendo um programa teste aqui com struct, e to esbarrando em uns erros aqui. #include <stdio.h> #define MAX 50 struct pessoa { char nome[MAX], rua[MAX]; int idade, numero; }; int main () { struct pessoa p; scanf ("%[^\n]", p.nome); scanf ("%[^\n]", p.rua); scanf ("%d", &p.idade); scanf ("%d", &p.numero); printf ("%s", p.nome); printf ("%s", p.rua); printf ("\n"); printf ("%d\n", p.idade); printf ("%d\n", p.numero); return 0; } Ele lê o nome, a rua, porém não deixa ler a idade e o numero, imprime o nome correto, mas não imprime a rua corretamente. O que tem de errado no codigo? Obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
guidjos 65 Denunciar post Postado Maio 10, 2013 Buffering. Sugiro criar uma rotina de leitura de uma linha do teclado, e funções específicas pra fazer parsing dos valores de que você precisa, convertendo as strings lidas em valores de tipos que você precisa. Dicas: fgets, sscanf, strtod. Compartilhar este post Link para o post Compartilhar em outros sites