プログラミング言語D†
はじめに†
言語の特徴†
- C言語の後継を目指して作られた言語
- コンパイル型(ネイティブコード出力)
- コンパイル速度は速め
- 比較的新しい
インストール(コマンドラインでやりたい人向け)†
コンパイラのダウンロード†
- ここからdmd.zipとdmc.zipをダウンロード、インストール
- どっちも解凍してどっかのフォルダ(ここではC:\とします)に各dmdとdmをコピーします。
- C:\dm\binにsc.exeとその他 と C:\dmd\binにdmd.exeとその他 があればおk。そうなるようにしてくだしあ
動作チェック†
インストール(GUIでやりたい人向け。初心者はこちら)†
コンパイラのダウンロード†
動作チェック†
- ファイル(F)->新規(N)->プロジェクト(P)
- D->D Project->次へ(N)
- プロジェクト名(P)に適当に入力->次へ(N)
- Targetを選択(通常はExecutable)->終了(F)
- 左ペインの src を右クリック->New->D module
- ファイル名(F)を入力->次へ(N)
- 次のコードを入れて、無事コンパイルできれば成功。
import std.stdio;
void main(){
writefln("Hello, World!");
}
インストール(GUIでやりたい人向け2。Eclipseが嫌いな人はこちら)†
開発環境のインストール†
- コンパイラ(DMD)のインストール
- DigitalMars社からダウンロード
- ダウンロードするのはdmdとdmcの2つ
- 特にこだわりが無い限り、最新の2.0がいいと思う
- デバッガ(ddbg)のインストール
- ddbgからダウンロード
- 適当なところに解凍(dmd/binでもいいんじゃね?)
- IDE(総合開発環境)のPoseidonのインストール
- Poseidonをダウンロード
- 「v0.221 Bin」じゃなくて「The latest revision」のほうなので間違えないように
- 好きなところに解凍して実行
- Tools→Languageでjapaneseを設定
- ツール(T)->オプション(O)でコンパイラ・デバッガの項目を設定
- 「DMDのパス」はそのまんまdmdフォルダのパスをセット
- 「DMCのパス」はdmフォルダのパスをセット
- 「デバッガのパス」はddbgのパスをセット
動作チェック†
- プロジェクトをつくろー
- ファイル(F)->新規プロジェクト(N)
- プロジェクト名、ターゲット名(exeファイル名)をセット
- プロジェクトパスは右のボタンから選択
- 左のパッケージエクスプローラのSourceを右クリックして新規->ファイル
- 次のコードを入力かコピペする
import std.stdio;
int main()
{
writefln("hello, work!");
getch();
return 0;
}
- ビルド(B)->ビルド(B)でエラーが無ければおk
- ビルド(B)->実行(R)でhello, work!と出たら成功。勇気出してハロワに行こう!
- デバッガつかってみようぜ
- 次のコードを入力かコピペする
import std.stdio;
int main()
{
int a = 0;
for (int i = 0; i < 20; i++) {
a = i * i;
}
return 0;
}
- プロジェクト(P)->プロパティ(P)でコンパイラオプションの項目に移動
- デバッグコードでコンパイル[-debug]をチェック
- Add CodeView 4 symbolic debug info with D extensions[-g]をチェック
- OKを押して閉じる
- ブレークポイントを設置
- 行番号のすぐ右をCtrl押しながら左クリックすると青い目印がつく
- とりあえずforの行に設置しよう
- ビルドしてデバッグ(D)->デバッガ起動(D)
- 上に二つなんかでてくるから、左上の再生ボタンみたいなのを押す
- なんか固まってるコマンドプロンプトがでてくる
- コマンドプロンプトはそのままで、Poseidonに戻る
- なんか色々右上に表示されていて、矢印のボタンが3つ現れてる
- 左の矢印ボタン(ステップイン)を押してステップ実行してみよう
- 右上の黄色いボタンを押すと現在の変数の様子とか見れるぞ!
- ↓3つのデバッグボタンの解説↓
- ステップイン:現在のポイントが関数呼び出しだったら、その中に入る
- ステップオーバー:関数呼び出しのステップ実行をスキップする
- ステップリターン:今居る関数の外にでるまでステップ実行をスキップする
リンク†
Eclipse†
参考サイト†