MessageBoxについて


国士無双  2009-04-09 23:13:58  No: 69954  IP: [192.*.*.*]

どうも。WinSockの時はお世話になりました。


また質問させていただきます。
環境はXP/VS2005です。

LPTSTR a;
MessageBox(hdlg,a,TEXT("確認"),MB_OK);
MessageBox(hdlg,a,TEXT("確認"),MB_OK);

MessageBoxにまったく同じ値を渡し、連続で呼び出した場合に
二度目にはaの値が消えるようなのですが、このような事は起こるものなのでしょうか?

編集 削除
wclrp ( 'o')  2009-04-10 01:38:07  No: 69955  IP: [192.*.*.*]

MessageBoxの説明だと引数はLPCTSTRだから
MessageBoxによって内容が書き変えられないはずなんだけどなあ。

編集 削除
仲澤@失業者  2009-04-10 12:00:17  No: 69956  IP: [192.*.*.*]

>二度目にはaの値が消えるようなのですが、このような事は起こるものなのでしょうか?

ありえません。const渡しなので。
ありえるとすると
  a=MessageBox(hdlg,a,TEXT("確認"),MB_OK);
に近いような、おばかな状態になっているかもしれません。

編集 削除
国士無双  2009-04-10 20:00:29  No: 69957  IP: [192.*.*.*]

お二人ともご回答ありがとうございます。

やはりありえないですよね。
連続で呼び出しているので、渡す値も書き換えられるはずもないですし。

値の確認にMessageBoxを出しただけなので問題がある訳ではないのですが、
たまたまこんな現象を見つけたので、気になって仕方なかったもので。

編集 削除