0x00の罠

 開発した「Communication Bridge」をRFID班に譲渡したのだが、なぜか送信した文字数より短い文字列しかブリッジしてくれない。見てみると、0x00が送信バッファの中に含まれていた。
 
 ブリッジする過程でバイナリをCStringに変換しているので、0x00を文字列の終端記号と認識し、それ以降を無視してしまっていたようだ。CStringで受け渡すのはやめて、CByteArrayを使うことにした。
 ただしテキスト形式で文字列を表示する部分だけは、何かに置き換えないとどうにもならずnull文字を表現するために、どの文字を代わりに使えばいいものか……。
 
 引き続き家に帰った後も開発を続けようと思ったのだが、ノートPC上に写したデータを間違って自宅のVisual SourceSafeからチェックアウトしてしまったので、全部消えてしまいました。
 
 明日もう一度大学にいって取ってこなければ。