Re: Součet v C
Petr Stehlik
petr.stehlik
Středa Březen 17 14:27:17 CET 2004
Nepomuze treba takto?
unsigned int U_Bat_Prum,ADRES;
usugned char U_Bat_Buf[2];
U_Bat_Prum=(unsigned int)U_Bat_Buf[0]+(unsigned int)ADRES;
----- Original Message -----
From: Michal Gregor
To: hw-news@list.gin.cz
Sent: Friday, May 24, 2002 7:08 PM
Subject: Sou?et v C
Zdrav?m, za?in?m si hr?t s C a narazil jsem na n?kolik probl?mu:
1)
ADRES a pole U_Bat_Buf[2] je d?lky 8 bit? unsigned
U_Bat_Prum je 16 bit? unsigned.
U_Bat_Prum=U_Bat_Buf[0]+ADRES;
Tento ??dek CCX5 nepo??t? korektn?, v?sledek je dlouh? pouze 8 bit?.
Kdy? uprav?m pole U_Bat_Buf[2] na uns16 u? to po??t? spr?vn?. Znamen? to ale
zpomalen? v?po?tu, del?? program a v?ce RAM. Nelze to ud?lat n?jak jinak?
2)
U_Bat_Prum=U_Bat_Buf[0]+ADRES+25; se mu nel?b?
U_Bat_Prum=U_Bat_Buf[0]+ADRES;
U_Bat_Prum=U_Bat_Buf[0]+25;Ale tohle vezme
Je tam chyba, nebo CCX5 neum? dlouh? v?razy?
P?edem d?ky, Michal
Další informace o konferenci Hw-list