What does ## do in C?
##
Example:
typedef struct { unsigned int bit0:1; unsigned int bit1:1; unsigned int bit2:1; unsigned
It's not a C construct, it's a preprocessor feature. In this case it's meant to evaluate the bt variable and concatenate it with the bit prefix. Without the hashes you would have bitbt there, which obviously would not work.
bt
bit
bitbt