Ir ao conteúdo

Impressão de strings


HiSec

Posts recomendados

Postado

Boa noite,

Estou usando struct em alguns programas que to fazendo (aprendendo) e esbarrei num problema aqui que não entendo porque acontece ou se tem erro no meu codigo;

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define MAX 100
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\n", p.nome);
printf ("%s\n", p.rua);
printf ("%d\n", p.idade);
printf ("%d\n", p.numero);
return 0;
}

Fiz essa estrutura com esses dados ai e mandei fazer a leitura na main, não tem erro de compilação, até ai perfeito;

Porém na hora de receber as entradas, coloco as cadeias de caracteres, porém ele não deixa ler os inteiros e imprime incorretamente as cadeias e no lugar dos inteiros imprime numeros estranhos (lixo);

exemplo:

jose da silva - entrada

rua 2 - entrada

jose da silva - saida

9 - saida

0 - saida (?)

0 - saida (?)

Reparem que nem foi feita a leitura dos inteiros, pois ele não permite.

O que pode estar acontecendo ai?

Postado

E nenhum professor me ensinou isso na faculdade, uma linha embaixo do scanf...

Problema resolvido, obrigado pela dica amigo.

  • Moderador
Postado

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!