掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
文字列のポインタ変数の受け渡し (ID:50982)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
C入門書を勉強中の者です。 文字列のポインタ変数の受け渡しの仕方で、もう何日も悩んでおります。 どうか間違いを教えてください。 環境:Win98 VC++6.0 ウィザートで、MFCを使わないWin32 Application で作成される一般的なHellow Worldアプリケーション内で実験中。 質問1 文字列を返す関数を作成しようとしております。 1.関数に文字列変数のポインタを渡し、 2.関数内でそのポインタで指定されるメモリに文字列を書き込み 3.関数処理後、呼び出し元でそのポインタで示される変数を見て、文字列を取得する というつもりでC言語の入門書を見ながら下記のコードを書きました。 /////////////////呼び出し側///////////////////////// case IDM_FUNC: int ret; char szBuf; ret=TestFunc(&szBuf); MessageBox(hWnd,(LPCSTR)&szBuf,"ポインタ渡し",MB_OK); break; //////////////////////////////////////// ///////テスト用Function/////// int TestFunc(char *szPath) { wsprintf(szPath,"%s","C:\\WINDOWS\\Application Data\\Test"); return 0; } 実行結果、W:\WIN としか、メッセージボックスに出力されません。 なにをどう間違えているのかわかりません・・・何日も・・・・ どうか何を間違えているのか、どうやればよいのかをご教授お願いしたします。 質問2 自exeが起動されているパスをアプリ内で取得するのはどうやればいいのでしょう? 当サイトのC言語コーナー「コマンドライン引数 」で参考になりそうなものが紹介 されていますが、これをどう関数化したら良いかわからない。 (同一フォルダでINIファイルを使いたい) 入門者のアホな質問とは思いますが、基礎の大事なところと感じております。 以上、宜しくお願いしたします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.