どうぶつしょうぎの完全解析結果をWindows(Visual C++)で使う方法(大雑把なまとめ)
https://www.tanaka.ecc.u-tokyo.ac.jp/ktanaka/dobutsushogi/
URLは再掲。上記サイトのプログラムを以下の環境で動かす事に成功したので、メモ。
- OS:Windows 7 Professional x64
- 開発環境:Visual Studio Community 2015
プログラムの修正が必要だった箇所は、以下の通り。
// 2016/08/06 06:51 4つ目の修正箇所を追記
- ifstreamのopen()関数の第二引数として「std::ios::binary」を追加。
- Windows環境では、これを指定しないとバイナリモードだと認識されないらしい。
- ifstreamのseekg()関数の直前に、clear()関数の呼び出しを追加。
- ファイル末尾までシークした後の動作が、こうしないと正常にならないらしい。
- ifstreamのseekg()関数の第二引数を「ios_base::beg」に変更。
- _S_begマクロ(?)が未定義の為。
- VC++のminマクロ定義が悪さするので、dobutsu.hをインクルードする前にminマクロをundefする。
私は4つ修正しましたが、ひょっとしたらどれかは不要な修正かもしれません。手間がかかるのと、取りあえず動く様になったコードを修正するのは嫌なので、検証はしませんが。
という訳で、一応備忘録兼情報共有という事で。