はじめに
cursesやncursesはUnix向けなので,Windowsでは使えません。なので代わりにPDCursesというものがあるのでこれを使います。
環境
- Windows 10
- Visual Studio 2015
PDCursesのダウンロード
こちらのGitHubページからPDCursesのソースをダウンロードし,適当な場所に解凍しておきます。
PDCursesのビルド
1. C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\vcvars32.bat
を実行します。これは後でnmake
コマンドを使う前準備です。
2. コマンドプロンプトで以下のコマンドを実行して,PDCursesのソースがある場所を指定します。
set PDCURSES_SRCDIR=<PDCursesの解凍先>\PDCurses-master
3. コマンドプロンプトでPDCursesのwin32
フォルダに移動して以下のコマンドを実行します。nmake
はC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
にあります。
nmake -f vcwin32.mak
4. win32
フォルダにpdcurses.lib
ができていることを確認します。
Visual Studioの設定
Visual Studioで空のC++プロジェクトを作って,以下の設定を行います。
- C/C++ > Additional Include Directoriesに
<PDCursesの解凍先>\PDCurses-master
を追加 - Linker > General > Additional Library Directoriesに
<PDCursesの解凍先>\PDCurses-master\win32
を追加 - Linker > Input > Additional Dependenciesに
pdcurses.lib
を追加
使ってみる
早速PDCursesを使ってみましょう。curses.h
をインクルードするとPDCursesの関数を使えるようになります。
以下のプログラムを実行するとHello curses
という文字列が斜め下に移動しながら表示されます。
#include <curses.h>
int main(int argc, char *argv[])
{
// 初期化
if (initscr() == NULL) {
return 1;
}
int i = 0;
while (true) {
// 画面をクリア
erase();
// 文字列を描く
mvaddstr(i, i, "Hello curses");
i++;
// 画面を更新
refresh();
// 1秒待機
napms(1000);
}
return 0;
}