From the example on the page you linked:
struct taxonomy {
int kingdom : 12;
int phylum : 6;
int genus : 2;
};
The individual bits cannot be accessed (as far as I know) using a variable. So you would have to use each name. For 8 bits you would have 8 names. So I don't think this has got you much further than a simple function that bit shifts and tests.