/Anonimizzato27865Utente anonimizzato15 feb 2020, 10:31Il valore della x mi viene 0 e non capisco perché? Qualcuno me lo può spiegare? #include <stdio.h> #include <limits.h> int main(){ unsigned int x = UINT_MAX; long long y= LLONG_MAX; x = y-x; printf("%u\n", x); }
WeierstrassUtente FamosoIscritto dafeb, 2019Messaggi222115 feb 2020, 11:201) Quanto valgono UINT_MAX e LLONG_MAX sulla tua macchina? Scoprilo con delle printf 2) usa un debugger 3) Avvisate il professore che già da molti anni esiste stdint.h (<cstdint> in C++) con int32_t e tutto il resto, proprio per evitare che la gente faccia dei cast senza cognizione di causa..
OoregonSuper FamosoIscritto danov, 2011Messaggi2191715 feb 2020, 12:00laurentibus ha scritto: Il valore della x mi viene 0 e non capisco perché? Perché sei meravigliato? Quale dovrebbe essere il risultato secondo te?