ファイルをEXEにドロップして起動させます。
ドロップしたファイルのパスを GetCommandLine( ) から
取り出すために、" の位置を調べます。
"EXEのパス" ドロップファイルのパス
となっているから、2番目の " の位置を調べました。
でも、for でのループが1回で終わってしまいます。
おかしいところを教えてください。
LRESULT CALLBACK WndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
{
char *p = GetCommandLine();
char str[200];
switch(msg){
case WM_CREATE:
int i;
for(i = 1; p[i] == '"'; i++);{
wsprintf(str, "%d", p[i]);
MessageBox(hWnd, chStr, "", MB_OK);
}
wsprintf(chStr, "%d", i);
MessageBox(hWnd, str, "", MB_OK); //結果は1
wsprintf(chStr, "%#x", p[0]);
MessageBox(hWnd, str, "1文字目", MB_OK); //結果は34
wsprintf(chStr, "%#x", p[1]);
MessageBox(hWnd, str, "2文字目", MB_OK); //結果は67
wsprintf(chStr, "%#x", p[2]);
MessageBox(hWnd, str, "3文字目", MB_OK); //結果は58
No.1ベストアンサー
- 回答日時:
int i;
for(i = 1; p[i] == '"'; i++);{
このループは
iをカウントアップしながらp[i]=='"'となるまで
となっています。即ち1回目のp[i]=='"'を見つけたらそこで
ループが終わるようになっています。
次のようにしたらいかがでしょうか。
int i,j;
j=0;
for(i = 1;j<2 ; i++);{
if(p[i] == '"')j++;
i = 1 からカウントアップしているから
1回目の p[i]=='"' を見つけたら、そこでループが
終わっていいんだけど、素の他の部分で間違いに気づきました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語配列の結合についてです。 なぜうまくいかないのでしょうか。 #include <stdio.h 4 2022/05/30 22:42
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# str[j++]の意味 2 2022/08/30 16:20
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# 宣言する関数の形が決まっている状態で、 str1とstr2の文字列をこの順に引っ付けてstrに保存し 2 2022/05/30 18:21
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- C言語・C++・C# sprintf()の使い方について 1 2022/08/17 16:16
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミングについて。 1つ...
-
画面を強制的に再描画させる方法
-
DoEventsが必要な理由について
-
pythonでファイルのコメント行...
-
DOSコマンドのループ内のTIMEコ...
-
For文を使った九九表の作成
-
VBAで3秒だけ時間を止めたい
-
vbscriptでIE自動入力(途中で...
-
ループ内での条件処理
-
CSVファイルの特定の行だけを読...
-
GIFアニメをループさせたくない
-
VBA横データを縦にしたいです
-
vb.netからエクセル関数書き込み
-
エクセル関数で1〜12の数字がル...
-
vb.netです。2次元配列の要素を...
-
VBA for文が止まらない
-
アセンブラによるウェイト(WAIT...
-
UWSCの終了の仕方
-
テキストボックスの名前に変数...
-
アクティブセルから、A列最終行...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
VBAで3秒だけ時間を止めたい
-
VBAでの一時停止と再開の方法
-
どなたかこのプログラミングを...
-
Escキーを押すと、中断する時と...
-
UWSCの終了の仕方
-
エクセルの当番表を作っていま...
-
VBA for i=1 to lastrow
-
「偶数・奇数の和」のフローチ...
-
アクティブセルから、A列最終行...
-
DoEventsが必要な理由について
-
vb.netからエクセル関数書き込み
-
GIFアニメをループさせたくない
-
DOSコマンドのループ内のTIMEコ...
-
範囲指定したセルを1つずつ飛...
-
流れ図(フローチャート)が分か...
-
乱数の桁数指定、または範囲指定。
-
テキストボックスの名前に変数...
-
CSVファイルの特定の行だけを読...
-
vb.netです。2次元配列の要素を...
おすすめ情報