Jedna lepiaca (ako spojit dva bajty do int)
Josef Štengl
ok1ced na nagano.cz
Čtvrtek Leden 5 13:25:23 CET 2017
Nejsou tam volatile
a přetypování (int8_t)
v tomto případě zcela zbytečné? Ani v původním provedení v cyklu nejsou nutné.
Upravil bych to na
#include <inttypes.h>
typedef int_least16_t result_t;
uint_least8_t bl;
uint_least8_t bl
result_t result;
int main(void)
{
result = (result_t)bh * 256 + bh;
}
a neznám architekturu, na které by to nechodilo :-)
Dne 5.1.2017 v 12:16 Jan Waclawek napsal(a):
> Kua chybicka se vloudila,
> result = (result_t)(int8_t)bh * 256 + bl;
> samozrejme.
>
> wek
>
> ----- Original Message ---------------
>
>
>
>> #include <stdint.h>
>>
>> // typedef int16_t result_t;
>> typedef int32_t result_t;
>>
>> volatile uint8_t bl, bh;
>> volatile result_t result;
>>
>> int main(void) {
>> result = (result_t)(int8_t)bh * 256 + bh;
>> }
>>
>> _______________________________________________
>> 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ší informace o konferenci Hw-list