ProgrammingとCに関するkimata24のブックマーク (4)

  • pthreadリファレンス

    以前に、スラッシュドット・ジャパンのSilphireの日記で連載していた、pthread日記をまとめているページです。pthread日記には、The Open GroupによるThe Single UNIX® Specification, Version 2の<pthread.h>に載っているAPI、全77個の解説が完了しています。なので、ここに書かれていないAPIについては、pthread日記を参照して下さい。 pthread_* pthread_create() pthread_exit() pthread_join() pthread_detach() pthread_equal() pthread_once() pthread_self() pthread_cleanup_push() pthread_cleanup_pop() pthread_key_create() pthre

  • 数値の文字列化 - firewood's diary

    デバッグ文を埋め込むとき、 ほげ発生 at function_x:nみたいに、「関数名:行番号」を付加したいと思うことはよくある。 GCCには__FUNCTION__という組み込みマクロがあり、Linuxでは__FUNC__という名前で定義されている。これがこの用途に使えるのだが標準化されておらず、他のコンパイラ(VC++など)では使えない。そんなときは仕方なく #ifndef __FUNC__ #define __FILE__ #endifという感じで代替しておく。 で、先ほどのデバッグ文だが、いちいち debug_printf("fatal error at %s, %d", __FUNC__, __LINE__)とは書きたくない。debug_printf("fatal error")と書いたらat以下を付加してくれるのがよい。 まず考えるのは、以下のように文字列と数値を関数_debu

    数値の文字列化 - firewood's diary
  • togeの日記 - mudflapを訳してみる

    まずい。 連休中、あまりに健全な生活を行っていたために、平日帰宅すると寝てしまいます。 ちっとも勉強が進みません。 まあ、健全な生活が送れてますけどね。 ぱぱっと実装完了。 DOMを使ったことがあるなら、簡単に利用出来ます。 いやぁこれは便利だわ。 敢えて文句を言えばC++のソースなのに#incldue とかしているのとか、ヘッダで無駄なファイルをインクルードしているのが気にいらんが。 せっかくの機能なのになかなか使われないみたいですね。便利なのに。 googleで"mudflap gcc"と指定してもあんまり情報がないのが残念です。 少しでも普及するように、以下のmudflap記事を適当に訳してみました。 http://gcc.gnu.org/wiki/Mudflap%20Pointer%20Debugging 続きを読む id:m107さんとかid:halo_w2さんが文字描画やってい

    togeの日記 - mudflapを訳してみる
  • エラー出力用マクロで可変長引数を使わずに__FILE__や__LINE__を埋め込む - Journal InTime(2005-02-09)

    _ エラー出力用マクロで可変長引数を使わずに__FILE__や__LINE__を埋め込む Subversionのコードを読んでいて、GCC拡張やC99の可変長引数マクロを使わずに、 エラー出力用マクロで__FILE__や__LINE__を埋め込む方法を発見。 まず、次のようにエラー出力用の関数を用意しておく。 error.c: #include <stdio.h> #include <stdarg.h> static const char *error_file = NULL; static int error_line = -1; void my_error_locate(const char *file, int line) { error_file = file; error_line = line; } void my_error(const char *fmt, ...) { v

  • 1