Re: C kérdés
hg12345
hg12345 at freemail.hu
Thu Oct 4 14:36:12 CEST 2007
Szia
a castoláson én is gondolkozam, de szerintem ilyenkor nem kell pointer.
(a gyakorlat úgy is megmutatja)
Egy hátránya van kicsit komplikált a leírása és talán több helyet is
foglal. De ha nincs más megoldás.
Arra gondoltam, de ezt a forditók nagyobb része nem engedi:
typedef Spec_t ......
Spec_t AlarmDef @&Backup[48];
vagy GCC esetén
#define _ADDRESS(x) __attribute__((address(x)))
_ADDRESS(&Backup[48]) Spec_t AlarmDef;
Mindkét megoldás forditó tipusonként azonos címre definiál egy
változót, vagy hasonló területű valamit, csak a hordozhatóság
kérdéses. MIvel nem tudok C-ben és nincs is gyakorlatom nem tudom
mi a célszerűbb és hordozhatóbb. Gondolom ezek nem igazán, mert
sok forditó specifikuselem tartalmaznak.
> > int Backup[100];
> >
> > struct DefAlarm{
> > unsigned type:10;
> > unsigned inv:1;
> > unsigned hys:1;
> > unsigned noVis:2;
> > };
>
> Szerintem ez C-ben makróval egyszerű
> Mondjuk:
>
> #define BackupAlarm ((struct DefAlarm *)Backup)
>
> Aztán simán használod:
>
> BackupAlarm[48].inv = 0;
>
> Palasik Sándor
>
> Ui: a szkópot azóta is megelégedéssel használom :-) Nemrégen
szóba került
> ...
>
> -----------------------------------------
> elektro[-flame|-etc]
>
9 6 4 M É R N Ö K I Á L L Á S A J O B L I N E –O N !
http://ad.adverticum.net/b/cl,1,6022,209896,260677/click.prm
More information about the Elektro
mailing list