とりあえず生きてますよ。
よく、「Webサイトを本に例えるな」という話を聞くが、そうなると「ブックマーク」という言葉は使わないほうが良いんじゃないだろうか。「ブック」という言葉が入っていると、どうしても本を連想してしまうだろうし。
じゃあ何がいいんだ?と言われても、何も思いつかないけど。
C KEY KLIST
C KFLD KEY1
C KFLD KEY2
C*
C MOVELXXX1 KEY1
C MOVELXXX2 KEY2
C*
C KEY SETLLFILE1
C KEY READEFILE1 90
C *IN90 DOWEQ'0'
C FLD1 IFEQ XXX1
C FLD2 ANDEQXXX2
C* なんか処理
C ENDIF
C KEY READEFILE1 90
C ENDDO
うーん。なんのためのSETLL、READEなんだろう。(FILE1のキー項目がFLD1、FLD2となっています。)
ローゼン五卷持つてゐたよ。四卷五卷と連續でダブらせた俺は異常。
エンジェルハート9巻を3冊買ってしまった私は異常なのだろうか。13巻も2冊あったし。
しかし、何故エンジェルハートばかり同じ巻を買ってしまうのだろうか…。
この文章、いろいろと深い意味がありそう。
この文章の主題は「シンプルなコードと、ただ短いコードは違う」というところだろう。そして、ただ短いだけでシンプルとは言えない例として、strcpyの実装の一例を挙げている。ここであげている実装例はK&Rにも載っているかなり有名な実装方法であり、ある程度のCプログラマなら意味を理解しやすいコードであろうと予測できる。が、Kuwataさんはこれを悪い例としてあげている。ここから推測するに、Kuwataさんは、「シンプル」と「短い」の違いだけでなく、K&Rのポインタ演算を多用するようなコードの書き方をも批判しているのではないかと。
どうでもいいけど、bはconstをつけたconst char *にしたほうが値の変更が無いことを明示できて良いんじゃないかと思う。
ブックマークの「ブック」から本を連想してしまう問題について。ブックマークが駄目なら「ホットリスト」とかは如何だろう。或いは「お気に入り」。
お気に入り
はどうも違和感があるんですよ。気に入らないサイトでもお気に入りに入れることがあるので。そうなると、ホットリスト
もホットでないものを登録することがありそうと思ったんですけど、お気に入りほどの違和感は無いような気がする。
というわけで、今後はホットリストと言おう。
そのソースを見る限りでは、私はB君にも賛同できない。
ローカル変数であるならまだ分からなくは無いが、hata
とzikan
はグローバル変数なので、変数名のみでその意味を推測できるような名称にした方が良い。
hata
がflag
になったところで何のフラグなのかが分からないし、zikan
がtime
になったところでやはり何の時間なのかが分からない。私的にはA君もB君も大差がないと思う。英語名か日本語名かよりも先に言うことがあるだろB君。
ついでに、これらをグローバル変数にする必要があったのかどうかも検証したほうが良い。
あと、flag
という変数名は出来る限りやめたほうが良いかも。例えばerror_flagという変数があったとして、それがtrueだったらエラーがあるのか、falseだったらエラーがあるのかが変数名からは判断できない。is_errorのようにすれば、trueの時にエラーであることが分かる。(is_error_flagなら可。かな…。)
上との関連。
ちなみに、
bool*は「どんな型でも指せるポインタ」なので、型がはつきりしてゐる場合には使ふ必要は無いものです。
ではなく、bool*void*の間違いではないでしょうか?どんな型でも指せるポインタ
とはvoid*のことですし、C言語にはbool型はありませんし(C++は知らんけど)。
修正されました。
またまた上との関連。
VB6において何でもかんでもVariantにするような人は良く見かけますが、Cにおいてなんでもかんでもvoid *にする人はあまり見ないような気がします。(いや、気のせいかもしれない。)
なんとなく赤く。
以前のスタイルは代替スタイルとして提供しています。
そういえば、書こうと思って忘れていたのですが、以下のようなことをやるツールを作って、Operaの起動時に同時に動くようにすれば良いんじゃないかと。
HWND hwnd = FindWindow(NULL,"Opera");
if (hwnd != NULL) {
SendMessage(hwnd, WM_CLOSE, 0, 0);
}
OKを押す手間が省けるというだけで、根本的な解決にはなっていませんが。