問題は、SORT.EXE はコンソールコマンドなので、せっかくWINDOWSアプリにしているにもかかわらず、DOS画面がかってに開いて閉じるので、なんかみっともないです。
このDOS画面を開かない方法はないものでしょうか?
http://www.hatena.ne.jp/1133014347
人力検索はてな - C言語の勉強をしています。SORT.Cのソースコードが欲しいです。それも最速のロジックで作成された一品を参照できる場所を教えてください。仕様はWINDOWSのSORTコマンドと..
http://www.paw.hi-ho.ne.jp/takadayouhei/technic/36.html
qsortに渡す関数ポインタにクラスのメンバ関数を渡したい
あの、すみません、以前の質問に回答したものです。
この回答は質問の趣旨には沿っていません。
ですので、ポイントを返せといわれたら返却いたします。
ちょっと気になりましたので、回答を入れさせてください。
外部プロセスSORT.EXEを起動する必然性はどのくらいあるのでしょうか?
つまり、ソート対象になるデータの量がメモリに収まりきらないなどの特殊な事情があるということでしょうか?
上記の事情がない限り、Cの頃からあるqsort関数で簡単にソートできてしまい、
・外部プロセスを呼び出す必要がなくなる。
→ 速い
→ 格好悪くない
→ 環境に依存しなくなる
というメリットが得られます。
手順は、
0. 比較関数を用意する
1. ソートしたいデータを配列に入れる
2. qsort関数を呼び出す
の3手順で、極めて簡単です。
URL2が、Cでの利用法の例。
URL3が、C++でのクラスのメンバ関数を、qsortの引数にする方法です。
(特にメンバ関数に拘る必要がなければ、クラスに属さないCの頃からある普通の関数で良いと思います)
ご存知の上で質問をされていたのでしたら失礼しました。
http://homepage1.nifty.com/MADIA/vc/vc_bbs/200410_04100027.html
DOS�R�}���h���E�C���h�E���\���������Ɏ��s��������
CREATE_NO_WINDOWをつかう方法、startupinfo構造体で指定する方法などが紹介されています。
おお〜すばらしい。まさにこれです。いま動作確認とれました。
入力データの容量はおおよそ、6〜10GBです。メモリは4G積んでいるので、残り6GBをテンポラリファイルで処理してくれる SORT.EXEを採用した次第です。
SORT.EXEは、10GBでもちゃんとソートしてくれるんでありがたいのですがねぇ