Ahoj, mohu jako podmínku pro přetečení zapsat:
int prom = 1000; //limits.h mam
while(1)
{
if ((prom += prom) > UINT_MAX)
{
printf("přetečení");
return 0;
}
}
pořád mi to někde leze do nekonečné smyčky
#2 cibule
j to byl překlep prom je deklarována jako unsigned.
Teď jsem tam dal místo znak > porovnání == a stejný výsledek;
Já myslel, že když mám UINT_MAX hodnotu např. 2 200;
a prom 1000, tak když já v druhém cyklu příčtu 2 000 + 1 000 (prom += prom), tak těch zbylých 800 přeteče a budu porovnávat zase 800 == UINT_MAX
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku