cygwin 3 12月 2007 C でヒアドキュメントごっこ C 言語 マクロ講座 # ## 編に触発されて、もうすこし悪戯を。(例によってcygwin+gcc) htmlでは、" (ダブルクォート)が多用されているので、cgiプログラムでは、文字列として定義するときにエスケープする必要があり面倒です。<h1 id="title">hello&… 続きを読む
C言語 2 12月 2007 C言語 の define マクロの可能性 ここ数日、define マクロで遊んでたんですが、まだまだ可能性が広がりそうです。 # と ## 共に古くからマクロで実装されている。ところが、これを知らない人達がとても多い。 十年、二十年と C 言語を使ってきたという人でも知らないと言う人が結構いる。これを知らないから、余計なコードを書き、バグを… 続きを読む
C言語 1 12月 2007 linkedlistとforeachを全面的に取り込み Starbug1にlinkedlistとforeachを全面的に取り込みました。 http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/starbug1/starbug1/list.h?view=markup http://cvs.sourceforge.jp/… 続きを読む
cygwin 30 11月 2007 C で lisp のmember-ifごっこ(lambdaっぽいこと) 今度は、common lisp の member-if に似たことをしようとしてみました。 1: member_if(it, list, new_list, 2: Point* p = it->element; 3: if (p->x % 2 == 0) nil; 4: ); 2,3… 続きを読む
cygwin 30 11月 2007 C で lisp のwith系マクロごっこ 色々なパラダイムの言語を噛った後に、c をやるのは面白いかもしれない。 例によってcygwin + gccで確認してます。引数を取るマクロ(#define)は、便利なんですが、予想以上でした。プリプロセッサが処理する時は単なる文字列として扱われるという認識です。「マクロの引数に指定できるものは何だろ… 続きを読む