西暦2000年問題


 西暦2000年になると、コンピュータが誤作動し、場合によっては、世界中が混乱の嵐に巻き込まれるかもしれない、というのが西暦2000年問題でした。小さなトラブルなどはあったようですが、世界規模での混乱は避けられました。
 あれだけ西暦2000年問題が騒がれたのは、プログラマのソフトウェアに対する認識の甘さによるところも大なのです。おそらく、みんな自信がなかったのでしょう。
 『どうせ僕の作ったソフトは、西暦2000年まで使われることなんかないだろうから、日付は西暦の下2桁だけでいいや。』
と考えていたわけです。もちろん、当時は、ファイルに保存する領域を少しでも節約しなければならないという、制約もあったのですが。
 さて、“優理子の父”氏から相談をいただいたのは、1990年代でした。データファイルの日付は、"920815"と6桁であり、プログラムも、それに依存するものでした。
 本書の執筆にあたっては、日付を"19920815"と8桁にし、プログラムの対応する箇所も変更しました。これは、一種の“西暦2000年問題”です。
 さて、西暦2000年問題に関して、こうやって解説している私も、偉そうなことをいえる立場ではありません。
 『この本は、西暦10000年まで読まれることはないだろう。』 と考えて、年の扱いを4桁としているのですから … 。

引用:柴田望洋『定本明解C言語実践編』,ソフトバンクパブリッシング,2001

戻る