[HWnews] Keil C51 a prace s konstatami
pavel_t@centrum.cz
pavel_t@centrum.cz
Středa Březen 17 15:27:45 CET 2004
Rada je prosta - vymazte strednik ; za definici konstanty. Kompilator to vyhodnoti jako konec radku. V pripade
> KEYBOARD_TIMEOUT += KEYB_NOKEY;
se nic nedeje, maximalne si to vylozi jako prazdny radek (videl jsem kompilator i na toto vracejici Warning) ale vse funguje spravne.
V pripade
> if(KEYBOARD_TIMEOUT == KEYB_NOKEY){}
by zapis vypadal nasledovne
if(KEYBOARD_TIMEOUT == 0;){}
kompilator ; v konstante povazuje jako konec programoveho radku a vyhodnoti to jako chybu.
Nic si z toho nedelejte, dodnes mi to cas od casu ujede a dam v takovemto pripade na konec define ;
Pavel
______________________________________________________________
> Od: Petr Simek <psimek@jcu.cz>
> Komu: hw-list@mailman.nethouse.cz
> CC:
> Datum: Wed, 17 Mar 2004 15:16:44 +0100 (Střední Evropa (běný čas))
> Předmět: [HWnews] Keil C51 a prace s konstatami
>
>
> Dobry den,
>
> mam v C51 definovounou konstatntu :
>
> #define KEYB_NOKEY 0;
>
> a kdyz ji pouziju napr pro pripocitani k promenne tak je to OK -
>
> KEYBOARD_TIMEOUT += KEYB_NOKEY;
>
> ovsem pokud ji pouziju pro porovnani nebo ji zkusim vratit v return tak
> se to prekladaci nelibi -
>
> if(KEYBOARD_TIMEOUT == KEYB_NOKEY){}
> return(KEYB_NOKEY);
>
> ovsem pokud na misto KEYB_NOKEY zapisu 0 , tak uz je vse OK. Nevite jak
> to obejit abych tam mohl mit tu hodnotu schovanou pod jmenem ?
>
>
>
> *------------------------------------------------------------------------*
> | Petr Simek APS JU |
> | psimek@jcu.cz |
> *------------------------------------------------------------------------*
>
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> HW-list@mailman.nethouse.cz
> http://nethouse.cz/mailman/listinfo/hw-list
>
Další informace o konferenci Hw-list