char* pStr = "123456";

これを2バイトずつ分割して、char型の1バイト10進数値(12,34,56)
に変換したいのですが、

先頭から2バイト取出し(適当な配列へ格納)
 ↓
atoi関数でint型整数へ変換
 ↓
これを、char型へキャストして、最終的に格納したいchar型配列へ
 ↓
次の2バイト文字へポインタ移動
 ↓
ここまでのフローをあと2回繰り返し

自分としては、こういった処理を考えています。
これでも出来るとは思うのですが、ほかにスマートな方法等あれば
教えてください。