Typy v C++

Pavel Kutina hw na prelude.cz
Pátek Leden 14 16:25:53 CET 2022


Díky, to mi nedošlo, je to tak, ona se udělá konverze ještě před porovnáním.

Pavel Kutina


----- Original Message ----- 
From: "Tomáš Hamouz" <konfery.tomas.hamouz na seznam.cz>
To: "HW-news" <hw-list na list.hw.cz>
Sent: Friday, January 14, 2022 4:17 PM
Subject: Re: Typy v C++


1 je defaultně signed, provede se konverze na signed.
Zkus napsat LastCounter+1U

Tomáš


> Zdravím,

> opět něco nechápu, můžete mne poštouchnout?

> Píšu FW v STM Cube, mám deklarované dvě proměnné:

> unsigned int cnt = 0;
> uint16_t LastCounter = 0;

> při porovnání v:

> if (LastCounter+1 == cnt)

> mi to píše warning:
> ../src/receive.cpp:129:22: warning: comparison of integer expressions of
> different signedness: 'int' and 'unsigned int' [-Wsign-compare]
>   129 |    if ( (LastCounter+1) == cnt)
>       |        ~~~~~~~~~~~~~~^~~~~~

> Chápu dobře, že unsigned int a uint16_t nejsou znaménkově kompatibilní 
> typy?
> Proč ne?

> Na něco podbného jsem narazil před chvílí u sscanf, kde se mi to zase
> vztekalo pri použití uint16_t (jsem tam měl) místo unsigned int (který to
> chtělo).

> Popravdě, asi 90% času tohoto projektu trávím rovnáním datových typů, 
> hodne
> v tom plavu :(

> Díky.

> Pavel Kutina

> _______________________________________________
> 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