Question: I'm trying to figure out how it is that two variable types that have the same byte size?

If i have a variable, that is one byte in size.. how is it that the computer is able to tell that it is a character instead of a Boolean type variable? Or even a character or half of a short integer?

Answer: 
Because you *specify* the type. C++ is a strongly typed language. You can't write `$x = 10`. :)

It knows 

```
 char c = 0;

```

is a `char` because of... well, the `char` keyword.
The computer only sees 1 and 0. You are in command of what the variable contains. 

you can cast that data also into what ever you want. 

```
char foo = 'a'; 
if ( (bool)(foo)  ) // true
{
    int sumA = (byte)(foo) + (byte)(foo);
    // sumA == (97 + 97)
}

```

Also look into [data casting](http://www.cplusplus.com/doc/tutorial/typecasting/) to look at the memory location as different data types. This can be as small as a char or entire structs.