[elektro] 30 1 bites paraméter
SZIGETI Szabolcs
szigiszabolcs at gmail.com
Sat Mar 19 19:02:21 CET 2016
Hali!
Azt hiszem itt megint a szabványban nem definiált dolgok jönnek be, de
szerintem az történik, hogy az egybites előjeles számot akarja előjeles
inté alakítani, amikor átadja a függvénynek., Így szépen kiterjeszti az
előjelet, aminek persze egybites számnál sok értelme nincs.
Próbáld meg, hogy a struct tagok és/vagy a függvény paramétere unsigned
int, vagy esetleg (unsigned int) castot használsz, amikor átadod a
függévénynek a bitfieldet.
Szabolcs
2016. március 19. 18:53 Ekati Bt. írta, <ekati at kabelszat2002.hu>:
> Az alábbi módon definiálok egy változót(SystemStatus). Értékadásnál,
> feltétel vizsgálatnál úgy működik ahogy elvárom. Függvényhívás
> paraméterének azonban már nem tudom átadni. Illetve átadni át tudom de
> nem a megfelelő érték lesz a proba_fuggveny-ben (mindig 0xffff). Hogyan
> tudnám a main-ből a flag1 értékét átszuszakolni a proba_fuggveny-be?
>
> NagyZé
>
> struct Flags
> {
> int falag1:1;
> int falag2:1;
> int falag3:1;
> }
>
> struct Flags SystemStatus ;
>
> void proba_fuggveny(int par1)
> {
> if (par1)
> {
> }
> then
> {
> }
> }
>
> main(voind)
> {
> proba_fuggveny(SystemStatus.flag1)
> }
>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list