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

Upper

estruturas

13 mensagens neste tópico

boas

Como e que eu insiro um inteiro numa parcela de uma estrutura? uma funcao exemplo que tenho e a seguinte

void X ( char * local, int * num)
{
    puts(local);
    local = *num;
}

mas esta a dizer que tenho mal inserido o parametro local..alguem pode ajudar?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ja li tudo mas nao consegui.me explicar o meu problema.

No codigo que fiz da.me um erro que e comparacao entre um pointer e um integrant mas ja tentei de todas as maneiras mas nao consegui resolver. Alguem pode me ajudar?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estás a atribuir a um apontador para caracter um valor inteiro que é dado pelo apontador para inteiro.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O apontador de caracter e a localizacao onde um tenho que por esse inteiro.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu sei mas os tipos são incompatíveis:

local: char*

*num: int

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Entao como e que eu fazendo por exemplo

le_int( /*Enderenço da estrutura*/, 10)

como e que eu posso por o numero 10 no endereço da estrutura?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Convertes o número para string e fazes a atribuição. Ou então mudas o tipo de 'local'.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

void X ( char * local, char * num)
{
    puts(local);
    gets(num);
}

Assim pode ser?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

MAs ao mudar o tipo do local fica por exemplo

void X ( int * local, int * num)
{
    *local = *num;
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

MAs ao mudar o tipo do local fica por exemplo

void X ( int * local, int * num)
{
    *local = *num;
}

Sim.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Existe e já te indiquei: converte o inteiro numa string e depois fazes a atribuição com o strdup ou o strncpy dependendo se a memória para o local já está alocada ou não.

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