Perche' dovresti avere questa limitazione?
Puoi allocare dinamicamente un intero e usare il puntatore per gestirlo ...
char* e' un puntatore ad un dato di tipo char .... quest'ultimo e' il dato.
I tuoi sono dubbi da C e non da C++ ... ripassa quelle parti ...