4

ac プログラムが正しくコンパイルおよび実行されたかどうかをテストしようとしています。

ac プログラムでHello Worldを印刷したばかり なので、チェックする ac プログラムを書きたいとします。

最初のプログラムが 0 を返したか、何か他のものを返したこと。

どうやってやるの。

前もって感謝します。

4

1 に答える 1

3

これは通常、プラットフォームに依存し、あるプログラムを別のプログラムから実行する方法によって異なります。Cライブラリ関数を使用する場合はsystem、プログラムを実行してから、次のようにそのプログラムからステータスコードを読み取ることができます。

int returnCode = system("./hello-world-program");
if (returnCode == 0) {
     ...
}

ただし、これを行うには、通常、OSレベルのプリミティブを使用することをお勧めします。Linuxはとを使用forkしてこれを処理します。この関数を他のコードと組み合わせてexec使用​​することで、プロセスID番号を指定して子プロセスの終了コードを読み取ることができます。waitWindowsにはこれを行うための独自のメカニズムがありますが、残念ながら私はよく知りません。

お役に立てれば!

于 2012-04-08T19:36:12.493 に答える