, . int , char, , , , 16 . , sizeof(char) < sizeof(int) , int char. sizeof(char) == sizeof (int) and char is an alias to unsigned char then you could overflow the int`, undefined.
undefined. char signed char sizeof(int) > sizeof(char), int char, undefined. char unsigned char, undefined.