Estruturas em C [RESOLVIDO]

1. Estruturas em C [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 23/06/2015 - 21:03h

Estava lendo um pouco sobre o GObject no devhelp quando olhei a estrutura GObjectClass, essa estrutura traz algumas funções nelas,, declaradas com algo parecido com isso:


struct Class {
int(* funcao) (int parametro_1, char* parametro_2);
}


porém quando tento acessar essa função recebo um segmentation fault, que não consegui resolver porque quando uso ponteiros para tentar acessar a função recebo erros de compilação.
O que são essas funções, e como utilizar?


  


2. MELHOR RESPOSTA

Thiago Henrique Hüpner
Thihup

(usa Manjaro Linux)

Enviado em 23/06/2015 - 22:01h

Quais são os erros?

Pelo que eu saiba, dá erro se você tenta acessar essas estruturas, pois pode prejudicar o funcionamento do(s) componente(s).

Já sobre ponteiros para funções seria um conceito para poder usar funções em estruturas, sendo uma PSEUDO-POO

Qual sua dúvida a respeito disto?


struct Class {
int(* funcao) (int parametro_1, char* parametro_2);
};


Você teria que "importar" uma função para a "Class", ou seja, com o mesmo exemplo:


struct Class {
void(* funcao) (int parametro_1, char* parametro_2);
};

void funcao (int parametro_1, char* parametro_2){
printf("O que foi recebido: %d\t%s\n",parametro_1,parametro_2);
}
int main(){

Class classe;
classe.funcao = funcao;
classe.funcao(5,"Oi");

return 0;
}




Espero ter ajudado

Qualquer dúvida só postar aqui.

[]'s

T+

--
http://piadasnerds.com/wp-content/uploads/2011/08/grafico_souProgramador.png

3. Re: Estruturas em C [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 23/06/2015 - 23:23h

Eu não sabia que ponteiros também podiam ser usados em funções por isso não tava entendendo como que colocavam essas funções ae dentro e como que acessavam elas. Valew ae mano, vc é [*****]!!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts