2014年3月28日金曜日

Microsoftのプログラム

つい先日のことですが、かつて世界中で使われていたソフト
WordとMS-DOSのソースコード(プログラム)が一般公開されました。

http://www.gizmodo.jp/2014/03/ms-dosword300kb.html

ちなみに、Wordは今でも使われているソフトですが、
公開されたのは、ほぼ最初のバージョンのものなので、
今使おうと思っても、ちょっと無理がある代物です。


昔とは言え、Microsoftの主要製品がどのように作られていたのか興味があって、
僕も、Wordのプログラムをダウンロードしてみました。

中身は「C言語」というプログラムで書かれており、
非常に懐かしい感じがします。


例えば、プログラム中の下記のような一行。

CopySt((*mpfnhfcb[fn])->stFile, st);


今風のオブジェクト指向言語なら、なんとなくクラスっぽい表現ですが、

C言語として読み解くと、

「mpfnhfcbという構造体配列の[fn]番目」が格納されている「メモリ番地」を参
照して
「stFile」という変数と、stっていう変数を渡して、
CopyStという関数で処理してくだされ。

という感じです。
構造体! というのがいかにも懐かしくて、良いです。

ちなみに文中にある「*」というマークは、C言語の「ポインタ」という表現で、
変数そのものではなく「変数を記憶しているメモリの場所」を示す方法で、
C言語を理解する最初、かつ最大の関門と言われています。
いや、懐かしい・・・。

Web開発でC言語を使うシーンは、もうほとんど無いのが残念ですが、
やっぱりプログラムは面白いなぁと思う平尾でした。

0 件のコメント:

コメントを投稿