2
int main()
{
  // system("start cd i:");            //1. changing to I: but again going back to c:
     system(" dir i: >>d:\txt.txt");   //2. "Access denied."
     getch();
return 0;
} 

誰かがステートメント1と2でこのコードによって生成された出力を説明してもらえますか?そして、これら2つのコマンドを同じsystem()呼び出しで連結する方法を提案してください。

4

3 に答える 3

7
system(" dir i: >>d:\txt.txt"); 

する必要があります

system(" dir i: >>d:\\txt.txt"); 

それ以外の場合は、許可されていないファイル「tab」の後に「xt.txt」を作成しようとします。

于 2013-02-25T17:20:37.700 に答える
1

2つのコマンドを。で連結できます&

system("cd i: &  dir i: >>d:\\txt.txt");   

また、パス\\の代わりに必要であることに注意してください-エスケープする必要があります。\\

于 2013-02-25T17:28:32.180 に答える
0

cdコマンドは、現在のドライブのディレクトリを変更することです。

ドライブを変更するには、ドライブ文字自体に続けて。を発行するだけです:

したがって、ドライブに切り替えるには、次のようI:に発行します。

I:

コマンドインタープリターでは、&:を使用して2つのコマンドを連結できます。

system("command1 & command2");

あなたの場合、次のようになります。

system("I: & dir >>d:\\txt.txt")

または、コマンドプロセッサで実行する各コマンドをテキストファイルに追加することもできます(1行に1つのコマンド)。ファイルに名前を付けてsomething.bat、コマンドラインから呼び出すだけです。その後、各行はコマンドプロセッサによって実行されます。

さらに読む: http: //en.wikipedia.org/wiki/Batch_file

于 2013-02-25T17:24:40.233 に答える