I just want to combine 4 characters into one unsigned long variable as shown below.
char y[16];
unsigned long Timer ;
y[12] = '1' ;
y[13] = '0' ;
y[14] = '1' ;
y[15] = '1' ;
Timer = y[15] - '0' ;
Timer |= (unsigned long) (y[12] - '0' << 24);
Timer |= (unsigned long) (y[13] - '0' << 16);
Timer |= (unsigned long) (y[14] - '0' << 8);
printf("%lu" , Timer);
I want the Timer to equal 1011 but I keep getting 1 as the output.