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

rcd

estruturas

12 mensagens neste tópico

ola.gostava de saber como e que se faz uma estrutura que relacione o nome de uma pessoa com o sobrenome.desde ja o meu obrigado...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

por exemplo:

struct Pessoa
{
  char* nome;
  char* sobrenome;
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não sei se é isto que tu queres mas aqui vai

typedef struct {
    char nome[100];
    char sobrenome[100];
} PESSOA;

Não percebi o que querias dizer por relacionar, mas a estrutura simples podia ser aquilo, se já existir a estrutura sobrenome pode ser algo do género, se bem que não vejo a lógica: 

typedef struct {
    char nome[100];
    struct SOBRENOME sobrenome;
} PESSOA;

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Claro é só declarares fora da main. De resto é exactamente igual.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ok..mas se eu modificar uma estrutura numa função fora do main() e precisar de ver os dados dessa estrutura numa outra função diferente como faço?.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ok..mas se eu modificar uma estrutura numa função fora do main() e precisar de ver os dados dessa estrutura numa outra função diferente como faço?.

Podes passar a estrutura como referência, mas sinceramente aconselho a declarar as structs fora do main. Aliás, ainda não vi nenhum exemplo em que elas não estivessem fora...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

tenho esta estrutura:

typedef struct people {

  char name[30];

  int age;

  int salary;

} person;

person team[1000];

eu queria pedir o nome um utilizador e colocalo na estrutura:

char nome[30]

scanf("%s",nome)

team[0].name =nome;

mas da-me erro.alguem tem alguma sugestão?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tens que usar o strcpy porque estas a tratar de strings:

char nome[30]

scanf("%s",nome)

strcpy(team[0].name, nome);

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Uma dica para futuros posts.

Substitui isto:

"mas da-me erro.alguem tem alguma sugestão?"

por:

"mas da-me erro. O erro é: XXXXXXX"

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Podes passar a estrutura como referência

Só uma pequena (ou grande) nota: em C não há passagem de parâmetros por referência, só por valor ou apontador. É uma das diferenças entre C e C++.

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