タグ

ブックマーク / www.nurs.or.jp/~sug (3)

  • Super Technique 講座~目次

    このページは、C言語の中級テクニックを中心に解説する。長らくプログラマをしていると、C言語の面白い使い方例が蓄積している。これらを一挙公開するために、このページを作ったのである。しかし、単にCに留まらず、他の言語の面白い特徴なども紹介していく。 内容的にはかなりヘヴィである。当然のことながら、「ポインタ虎の巻」程度の内容はちゃんと使いこなせることを前提とする。意外な技、落し穴、派手なテクニックなど、内容満載だが、ちゃんとデータ構造とアルゴリズムなども説明できれば良いと思う。(まあ、ぼちぼちやってきいます...) 以下の目次には手引きのために、評価がつけてある。凡例として示す。 レベル その解説で記載されている内容のレベル 有用度 その内容が実際に役に立つものかどうか 邪悪度 その内容が薦める方法が、一般的なコーディング規約の中で「邪悪」とされがちなものであるか否か。関数ポインタの活用(濫用

    kuenishi
    kuenishi 2010/02/25
  • Super Technique 講座~longjmpと例外

    プログラムの流れを制御する手段として、いわゆる「構造化構文(for とか if とか)」、悪名高い「goto 文」などがあるのは周知のことだが、かなり特殊なものとして、「setjmp, longjmp」による「非ローカル分岐」と呼ばれるものがある。この「非ローカル分岐」は「非ローカル」と言うだけあって、ある関数の中から、別な関数に制御を移すことができたりする。まあ、そのために乱用すべきではなく、注意して使わなくてはならないライブラリ関数なのだが、実はこれは JavaC++ で言語の上で実装されている「例外」の基礎となるものである。だから、まずこの標準ライブラリ関数「setjmp, longjmp」について解説しよう。 → Java 講座の「例外」 setjmp, longjmp とは どうやって実現してるの? setjmp/longjmp の利用例~インタプリタ 補追1:setjmp

    kuenishi
    kuenishi 2009/01/01
  • Log4J徹底解説~Log4cxxと小物ツール

    目次 Log4cxx のインストール Log4cxx のテスト Log4cxx を使った小物ツール swatch で「合わせて一!」 Log4cxx のインストール さて、今度は Log4cxx である。Log4cxx は Log4JC++ 版ライブラリであり、基的に Log4J と同様に動作する。log4j.properties や log4j.xml のような設定ファイルもほとんどそのまま動作するのである。テストしたのは log4cxx-0.9.7 だが、これは多少新しめのコンパイル環境を要求する。また Java と違って一部機能は標準ライブラリにないために、コンパイル時にオプションで適当なライブラリを指定してやらなくては有効にならない。 コンパイルは次のようにする。 % ./autogen.sh % ./configure % make % make check % su

  • 1