Checking Binary numbers

I'm reading a string of data that is 5 characters long string of 1's and 0's like

1000
0100

each represent the status of an item, could someone point me in the right direction on how to best test for each?

If you store them as a character array:

if (character_array[n] == '1')

If you store them as bits in an integer value:

if (integer_value & (1<<n))

Note: 'n' is an integer value from 0 to 4.

I'm not finding much in the way of conversion functions.

As it turns out it occured to me that the main use of this number is to light an led that represents each bit, So if I could just convert this to a number I could send it to the Shift Register as is.

To convert:

int integer_value = 0;
char character_array[] = "0100";

for (int n = 0; n<5; n++)
    {
    integer_value <<= 1;
    if (character_array[n] == '1')
        integer_value += 1;
    }