C ukazatel na funkci

Miroslav Draxal evik na volny.cz
Pondělí Říjen 8 14:08:16 CEST 2018


Ještě malá otázečka, pokud by ta hodnota nebyla l-hodnota (0x48000000) ale
třeba adresa na zapsaná v RAM?

Čili.

uint24_t Adresa = 0x123456;

typedef void(*pNeco)(void);

 

    pNeco pAkce;

    pAkce = (pNeco) Adresa; // ????????

    pAkce();

 

Jak tohle přetypovat?

 

 

From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Jaroslav
Buchta
Sent: Monday, October 08, 2018 1:52 PM
To: hw-list na list.hw.cz
Subject: Re: C ukazatel na funkci

 

Takto napr. by to melo jit 

void neco(void)
{

}

typedef void(*pNeco)(void);

void main()
{
    pNeco pAkce = NULL;
    pAkce = neco;
    pAkce();
    pAkce = (pNeco)0x48000000;
    pAkce();
}

Dne 08.10.2018 v 13:40 Miroslav Draxal napsal(a):

Můžete mi to rozepsat?

Tápu v tom.

 

 

From: Hw-list [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Jaroslav
Buchta
Sent: Monday, October 08, 2018 1:33 PM
To: hw-list na list.hw.cz
Subject: Re: C ukazatel na funkci

 

vytvorit si ukazatel na funkci jako definici typedef  a pak adresu
pretypovat.


Dne 08.10.2018 v 13:30 Miroslav Draxal napsal(a):

Dobrý den,

Prosím o pomoc znalce.

 

void neco(void);

void (*pAkce)(void);

    

    pAkce = neco;

    pAkce();

 

Tohle je jasné. 

Jak místo neco() zadat přímo adresu programu? Lze to vůbec?

Něco jako 

 

    pAkce = 0x001234;

    pAkce();

 

Díky za nakpnutí. Míra

 







_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list

 






_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list

 

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20181008/37a585ec/attachment.html>


Další informace o konferenci Hw-list