I'm trying to shift bit0 as follows:
unsigned long int tim;
tim = 1;
tim = tim << 31;
printf("tim = %ld",tim);
output: stc = -2147483648
However, I'm expecting to be -> 0x80000000 (+2147483648)
Why i get the negative number? By the way I'm building 32-bit console application under borland C++ and size of long is 4 bytes.