No entiendo bien lo de char.
Cuando declaro un
Estoy declarando un caracter (e inicializándolo en este caso a valor 'b'), y este sí que tiene 8 bits (2^8 = 256, donde entra todo caracter ASCII).
Ahora bien si yo hago
Estoy declarando un array de caracteres. Es por eso que no sé que diferencia existe entre esto y el char* que propones. Imagino por el operador * que se refiere a punteros. Pero no veo la diferencia.