この文書の現在のバージョンと選択したバージョンの差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
ja:cpp:shellcommand [2017/06/07 13:41] kota |
ja:cpp:shellcommand [2018/04/12 06:57] (現在) kota |
||
|---|---|---|---|
| ライン 4: | ライン 4: | ||
| ナイーブには | ナイーブには | ||
| * system 関数 <cstdlib> | * system 関数 <cstdlib> | ||
| - | * popen 関数 <csdio> | + | * popen 関数 <cstdio> |
| を使う2通りがある。\\ | を使う2通りがある。\\ | ||
| ただコマンドを実行したいだけであればsystem関数を使えば良いが、system関数の返り値はshellの終了ステータスであり、 | ただコマンドを実行したいだけであればsystem関数を使えば良いが、system関数の返り値はshellの終了ステータスであり、 | ||
| ライン 22: | ライン 22: | ||
| while( fgets(buffer,sizeof(buffer),pipe)!=NULL ){ | while( fgets(buffer,sizeof(buffer),pipe)!=NULL ){ | ||
| - | strtok(buffer,"\n\0");// bufferには改行コードが含まれてしまっているのでそれをNULLに置換 <string> | + | strtok(buffer,"\n\0");// bufferには改行コードが含まれてしまっているのでそれをNULLに置換 (#include <cstring>) |
| .... | .... | ||
| - | .... // コマンドの標準出力を1行ずつ読んで処理を実行 | + | .... // コマンドの標準出力を1行ずつ読んで(bufferに格納)好きな処理を実行 |
| .... | .... | ||
| } | } | ||