bitTimerout=0; Here bit is essentially the same as char and int (same function, different type), char is 8 bits, int is 16 bits, bit is 1 bit. Each byte is 8 bits, so it can contain 8 bits, and the bit has only two values, 1 and 0.bitTimerout=0; bitkeypress; You define two variables of length 1 bit.