ちなみに、C言語的には255が表示されるとは限りません。 255が表示されるのは、CPUがリトルエンディアンの場合だけです。 現在のWindowsが動くCPUはリトルエンディアンですが、他のOSが動くCPUにはビッグエンディアンやエンディアンを切り替えられるバイエンディアンのものもあります...
C 言語ではchar型を数値として実装していたので、対応するint値を文字変数に代入することができます。例えば、intベクトルからcharベクトルに値をプッシュし、std::copyアルゴリズムを使ってコンソールに出力すると、期待通りの ASCII 文字が表示されます。