MessageBoxについて


国士無双  2009-04-10 08:13:58  No: 69954

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

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

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

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


wclrp ( 'o')  2009-04-10 10:38:07  No: 69955

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


仲澤@失業者  2009-04-10 21:00:17  No: 69956

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

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


国士無双  2009-04-11 05:00:29  No: 69957

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

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

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


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加