Cast von Konstanten bei Vergleichen

Gast #6448660
Lesenswert?

Hallo,

ich benutze Keil 5 für einen STM32F1XX
es existiert offensichtlich ein Unterschied zwischen:
1
 if(gu32_Timer      <   4000000000) gu32_Timer++;

und dem explizit gecasteten Code:
1
 if(gu32_Timer      <   (uint32_t) 4000000000) gu32_Timer++;

die Variable gu32_Timer ist vom Typ uint32_t.
Ich hätte gedacht, dass automatisch auf den linken Datentyp gecastet 
wird?
Der sich ergebende Maschinencode ist jedoch von unterschiedlicher Größe.

Vielen Dank!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren