charって文字コードの型ってよりは、最小単位のバイト数である、が重要だと思ってるんだけど違う?
大量のデータをとりあえずchar型の配列とかポインタで格納し、unsigned charでキャストして、unsigned charひとつ分のバイトデータに分割し、加工してまたくっつけるてlong型返すとか。