タグ

ブックマーク / linuxshugendo.wordpress.com (2)

  • C 言語で CGI!

    C 言語で CGI です。どうなんですかね。ともかく、ものは試しです。 getenv  という関数を使えば REQUEST_METHOD, QUERY_STRING といった CGI プログラミングで必要になる環境変数にアクセスできるようです。 それじゃあということで QUERY_STRING を分割して連結リストに格納する関数を書いてみたんですが、それだけでもめんどくさい。そして気付いてしまったんですが、テンプレートは一体どうするの?まさか fread, printf だけでやるのは厳しいだろうし…。 そこで C で使えるテンプレートエンジンを探したところ、Neotonic ClearSilver という清涼飲料水みたいな名前のエンジンを見つけました。これのいいところは、CGI Kit という CGI を書くのに必要な機能をまとめたモジュールが入ってるところです。 早速 ClearSil

    C 言語で CGI!
    OKIIZO
    OKIIZO 2012/08/29
  • インクリメント・デクリメント演算子

    C 言語にはインクリメント演算子とデクリメント演算子という便利な演算子があります: #include <stdio.h> int main () { int a = 5; --a; printf ("%d\n", a); return 0; } 上の例なら、変数 a は最終的に 4 になります。 では以下はどうなるでしょうか: /* Practical C Programming (O'Reilly) 参照 */ #include <stdio.h> int main () { int a = 5; a = --a - a--; printf ("%d\n", a); return 0; } 答えは -1 です。以下のように分解すると分かりやすいです: --a; a = a - a; a--; 実際、コンパイラ (gcc) は以下のようなアセンブリコードを出力します: movl $5, 2

    インクリメント・デクリメント演算子
    OKIIZO
    OKIIZO 2012/08/06
  • 1