VC++6.0を使用して、Debugを実行していたところ、
「STRCAT」を使用しているStepでステップ実行したところ、
「Find Source」という題名でポップアップが表示され、
「please enter the path for STRCAT.ASM」と要求されてしまいます。
OSの検索を使用して「STRCAT.ASM」というファイルを検索したのですが、
見つかりません。このファイルはどこにあるのかご存知の方お教えお願い
いたします。
(STRCATだけでなく、STRLENでも同様のメッセージが表示されています。)
すみません。自己レスです。
CD-ROMの中に、STRCAT.ASMなどのファイルがありました。
CD-ROMをセットして、このファイルを指定すれば、デバックの
方はできそうです。
しかし、コンパイル時は何もエラーが出ず、正常に終了するのに
も関わらず、デバック時に、これらのファイルを要求してくるのは
どうしてでしょうか。
CD-ROM をセットしっぱなしはめんどくさいので Setup で追加しましょう。
カスタムセットアップ中の CRT ソースコードを追加でOK
# その後再度 Visual Studio SP6 を実行
> デバック時に、これらのファイルを要求してくるのはどうしてでしょうか。
あなたのプログラムにバグがあるからです。
たとえば不定ポインタとか、処分済みオブジェクトを指すポインタの先に
strcat/strcpy/strlen 等を発行すると実行時エラーになります。
そういう詳細がわかっていれば実は strcat.asm は不要です。
こんなコードを書いていませんか?
char *p; // p はどこを指しているか不定
strcat(p, "abc");
> あなたのプログラムにバグがあるからです。
> たとえば不定ポインタとか、処分済みオブジェクトを指すポインタの先に
> strcat/strcpy/strlen 等を発行すると実行時エラーになります。
いや、スレ主はエラー出るとは一言も書いてないし。
単にランタイムの中をステップ実行しようとしたからでしょう。
ステップ実行するときは、F10 と F11 を使い分けるとよいですよ。
うむむ、御意。
ライブラリソースの中まで追いかけていく必要は無いことがほとんどですね。
# 皆無でなかったのが悲しいけど。
ツイート | ![]() |