文字列が格納されているポインタからの取出し
1.DumpDatというポインタに、テキストファイルから読み出した文字列(=aabb)を格納します。
2.cPtr=pDoc->GetDumpData(); にて、DumpDatのアドレスを取得し、cPtrに格納します。
3.wsprintf(cData,"%02X",*cPtr);にて、文字列を取り出し16進表記表示で、cDataに格納します。
4.TextOut(表示する文字数,文字の高さ,cData)で、cDataを表示します。
このとき、
1の時:DumpDatにファイルから読み出したデータは「(aabb)が入っていると考えています。
2の時:cPtrには、アドレスが格納されていると考えています。
3の時:cDataには、(61,61,62,62)が入ると考えています。
4の時:(61 61 62 62)が表示されると考えています。
<結果>
考えた内容と結果が異なりましたので、トレースしてみたところ、
・3の時に、「cData」には、(61)のaの一文字しか格納されていませんでした。
・結果、4の時に表示される文字は、61の1文字分でした。
3の段階で、全文字を取り出すのではなく、1文字文(61)しか取り出さないのはなぜなのでしょうか?
⇒(61 61 62 62)が抜けませんでした。
<質問>
ポインタから文字列を取り出す際は、1文字しか取り出さないのでしょうか?
ご教授よろしくお願いします。
お礼
ありがとうございます!