Mam taki kod:
#include <iostream>
int main()
{
char i = 1393;
std::cout<<(int)i;
}
Wyjście to: 113
I moje pytanie: jak obliczyć wartość zmiennej po przekroczeniu jej maksymalnego zakresu?
Mam taki kod:
#include <iostream>
int main()
{
char i = 1393;
std::cout<<(int)i;
}
Wyjście to: 113
I moje pytanie: jak obliczyć wartość zmiennej po przekroczeniu jej maksymalnego zakresu?
Dla typów ze znakiem takie działanie to UB, więc jakiekolwiek gdybanie nad wynikiem nie ma sensu - kompilator może wstawić tam wszystko.
#include <iostream>
int main()
{
unsigned char i = 1393; std::cout<<(int)i;
}
Typ bez znaku. Więc jak to obliczyć?
Modulo maksymalna wartość+1
Dzięki