• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

iniciado

Problema

3 mensagens neste tópico

Boas! Será que me podiam ajudar eu estou a fazer um trabalho com menus mas só que quando compilo dá-me este erro/aviso - [warning] passing arg 1 of ´gets´from incompatible pointer type - na parte gets(pessoa.nc), e tenho uma duvida será que o gets assume numeros?

Mesmo quando eu executo o programa assume o erro... :wallbash:

estao aqui as partes:

a estrutura:

/*Estrutura referente aos Clientes*/

typedef struct scliente

{

int nc[10]; /*numero de cliente*/

char cnome[100];

char cmorada[50]; /*Morada do cliente*/

int telefone[15]; /*Numero de telefone do cliente*/

struct scliente *prox;

} CLIENTE;

/* coloca os dados da pessoa no registro pessoa*/

  printf ("\n Coloque os dados do cliente nos campos abaixo:\n");

  printf ("Numero de Contribuinte:");

  //scanf("%d", &nc);

  gets(pessoa.nc);

  printf ("Nome:");

  gets(pessoa.cnome);

  printf ("Telefone:");

// scanf("%d", &telefone);

  gets(pessoa.telefone);

  printf ("Morada:");

  gets(pessoa.cmorada);

agradeço a ajuda =)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se por "assume números" queres dizer "aceita números", então não. Para utilizares o gets tens que ler para um array de char, e depois converter para número.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Já descobri o meu erro  :)

Em vez de "gets(pessoa.nc);", usei "scanf("%d",&pessoa.nc);", visto ele receber um numero...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora