タグ

cに関するyama0のブックマーク (2)

  • 初級C言語Q&A

    [↑質問一覧] [ホームページ] 号別リスト コンパイラの選び方 (C MAGAZINE 1995-6) 文字列 (C MAGAZINE 1995-7) ポインタ (C MAGAZINE 1995-8) malloc, free (C MAGAZINE 1995-9) 値 (C MAGAZINE 1995-10) スタイル (C MAGAZINE 1995-11) 不定と未定義 (C MAGAZINE 1995-12) 前処理 (C MAGAZINE 1996-1) 処理系依存の問題 (C MAGAZINE 1996-2) 動かないプログラム (C MAGAZINE 1996-3) 構造体 (C MAGAZINE 1996-4) ビット操作、論理演算(C MAGAZINE 1996-5) 標準ライブラリ (C MAGAZINE 1996-6) 構造体(2) (C MAGAZINE 1996

  • 再入不可能な関数を C で実装する - いやなブログ

    再入不可能な関数を C で実装する 一度実行したら二度と中身を実行できなくなる再入不可能な関数を C で実装してみます。通常、このような関数はシングルトンなどの静的なデータの初期化に使いますが、ここではデータについては考えないことにします。 static 変数をフラグに使う まずは最も単純な方法から見ていきます。次の関数は static 変数をフラグに使って再入を防いでいます。厳密に言えば関数そのものには入ってしまっていますが、ここで気にしないことにします。 void once(void) { static int entered; // 最初は 0 if (entered == 1) { // すでに入ったことがある場合は return; // すぐ出る } entered = 1; // 初回の場合のみ、何かを実行する } この方法はシングルスレッドのプログラムではうまく動きますが、マ

  • 1