-3

system()呼び出しを使用してバッチ ファイルを実行すると、次のエラーが発生します。

「C:\newfldr\mybatchfiles.bat」は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されません。

エラー: system("C:\newfldr\mybatchfiles.bat");

誰でも理由を説明できますか?

4

1 に答える 1

0

おそらく、文字列を正しく記述する必要があります。たとえば、次のようになります。

 system("C:\\newfldr\\mybatchfile.bat");

C コンパイラは、定数文字列リテラルのバック スラッシュ エスケープを解釈していることに注意してください。特に\n改行文字であり\\、バックスラッシュをエンコードします。

デバッグ用のコマンド文字列を出力して問題を見つける (またはデバッガーを使用する) ことができます。

ところで、Linux では\、ファイル パスでめったに使用されないため、その問題はありません。Linux を試すことを検討しましたか? (楽しいです)。

于 2012-08-04T05:52:42.500 に答える