• Stars
    star
    109
  • Rank 319,077 (Top 7 %)
  • Language
    C
  • Created over 6 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

『[改訂新版]C言語による標準アルゴリズム事典』サポートページ

全ソースコード[文字コード:UTF-8]

ソースコードについては何の権利も主張しませんので自由にお使いください。

リンク

訂正

  • p.9 12行目 12は8の2倍より大きく→21は8の2倍より大きく
  • p.59 contain.c の5行目 int cmp(void *x, void *y)int cmp(const void *x, const void *y) としないとコンパイラが警告を出すかもしれません。
  • p.214 weights.c の6行目 char side[2][3] = { "左", "右" }; はUTF-8の時代では char side[2][4] = { "左", "右" }; としないと動作がおかしくなります。あるいはもっとわかりやすく char *side[2] = { "左", "右" }; とするべきでした。
  • p.296 rndtest.c 25行目が一部文字化けしていますが ś2±2 です。
  • p.312 本文 log((1-x)/x) → log(x/(1-x)) プログラムのほうは正しくなっています。なお,乱数 rnd() がぴったり 0 になれば log(0) つまり -Inf になりますが,その対策は省略してあります(「乱数」の項にぴったり 0 や 1 にならないようにする方法が書いてあります)。
  • pp.334-336 印刷されたソースコード中 return ~r ^ ... のように ~ (NOT) と ^ (XOR) が混在している return が4箇所ありますが,いずれも ~ (NOT) は不要で,return r ^ ... が正しいコードです。つまり,ソースコード中の crc*.c が正しいものです。本の製作過程で間違いが混入したようです。申し訳ありません。
  • p.347 56行目 malloc() のサイズの n + n4 は実は n - n4 で十分です(元のままでも動作に支障はありません)。プルリクありがとうございます。