• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:自作関数で元の値を変更したい)

自作関数で元の値を変更する方法

このQ&Aのポイント
  • ポインタとは何か、ポインタを使って値を変更する方法を学びましょう。
  • 元のプロセスでMyFunc関数を呼び出して値を変更する方法について解説します。
  • 元のプロセスの自作関数で変数の値をNULLにすることの影響と、エラーメッセージが表示される理由を説明します。

質問者が選んだベストアンサー

  • ベストアンサー
  • -soh-
  • ベストアンサー率27% (55/201)
回答No.1

C環境が家に無いため机上のみになってしまい申し訳ないのですが。 とりあえず解決法としては ご明察の通りポインタを使用で良いかと思われます。 void MyFunc(HWND wnd){ を void MyFunc(HWND *wnd){ に 呼び出し時に参照渡しにするため MyFunc(hWnd); を MyFunc(&hWnd); に。 それとアドレスの指し示す先の値をNULLにするため MyFunc関数内の wnd = NULL; を *wnd = NULL; に それぞれすれば良いと思います。

A__
質問者

お礼

ありがとうございます。 SetWindowText(wnd, "てすと"); も SetWindowText(*wnd, "てすと"); に変更しないとコンパイルエラーだったけど、 そこも直したらできました。

関連するQ&A