「Linux技術者のためのC言語入門」(初版第2刷)
正誤表

箇所
第1章(p.52) 「文字列リテラル」と配列は似て非なるものなので ポインタ変数」と配列は似て非なるものなので
第4章(p.118) [2]の「処理」で「中断」が起きた場合は、タイミングにより「ファイル」が壊れることはあるかもしれません。 [2]の「処理」で「中断」が起きた場合は、タイミングにより「ファイル」が壊れることはあるかもしれません。
また、ファイルクローズする前にfsync関数を呼び出し、ファイルの変更内容をストレージデバイスに反映させておくことで、後続のrenameが失敗することによるファイルの故障確率は下がります。
第4章(p.119) [file_ex2.c]
#include <stdio.h>
:
printf("write data %d\n", val);
fclose(fp);
[file_ex2.c]
#include <stdio.h>
#include <unistd.h>
:
printf("write data %d\n", val);
fsync(fileno(fp));
fclose(fp);
第4章(p.126) flush
close システムコールの処理内部から呼び出され、すべてのデータの書き込みを行なう。
flush
close システムコールの処理内部から呼び出され、すべてのデータの書き込みを行なう。 ※NFSやCIFSなど一部のファイルシステムのみ

「Linux技術者のためのC言語入門」(初版第1刷)
正誤表

箇所
本文に登場する重要語句(Fedra、Linux、gcc…) 本文に登場する重要語句(Fedora、Linux、gcc…)
第1章(p.10) 「return文」の指定がなくても、「コンパイル」が通ってしまうところが 「C言語」の恐いところではありますが、 「return文」の指定がなくても、「コンパイル」が通ってしまうところが 「C言語」の恐いところではありますが(C99以降では0を返すことが保証されています)
第1章(p.30) 加算演算子の*, - 加算演算子の+, -
第1章(p.39) 「64バイト」の大きさをもち、 「8バイト」の大きさをもち、
第1章(p.40) 「「領域」の大きさが決まります。 「領域」の大きさが決まります。
第1章(p.45) (“1234567”と\0)を (“1234567”と¥0)を
第1章(p.49) 「ブロックなしの行連結」(\) 「ブロックなしの行連結」(¥)
第1章(p.52) 最後の「ヌル」(\0)も 最後の「ヌル」(¥0)も
第1章(p.52) #else, #endi #else, #endif
第1章(p.52) 「文字列リテラル」と配列は似て非なるものなので ポインタ変数」と配列は似て非なるものなので
第1章(p.52) 「文字列リテラル」は「ポインタ」なので、「sizeof」では「ポインタ」の 「サイズ」になり、「データ」の大きさにはなりません。 ポインタ変数」は「ポインタ」なので、「sizeof」では「ポインタ」の 「サイズ」になり、「データ」の大きさにはなりません。 また、sizeof()はsize_t型のため、printfの書式にはunsigned intでキャストして%uを使うか、 C99以降であれば%zuを使うのが厳密には正しいです。
第1章(p.54) 終端が「ヌル」(\0)で終わる 終端が「ヌル」(¥0)で終わる
第2章(p.70) 「\x1b」の箇所が ¥x1b」の箇所が
第2章(p.70) 「\x」に続く ¥x」に続く
第3章(p.82) 「関数」の「返り値」「FILE構造体へのポインタ」となります。 「関数」の「返り値」は「FILE構造体へのポインタ」となります。
第4章(p.125) iterateと同様だが、複数同時に読み込みをができる点が異なる。 iterateと同様だが、複数同時に読み込みができる点が異なる。
第4章(p.126) inotify情報の表示に従う。 inotify情報の表示に使う。
第5章(p.160) 「セマフォ」の「P操作」で1つ「減算」すること、 「セマフォ」の「P操作」で1つ「減算」すると、
第5章(p.173) 「生成」した「スレッド」は存在していないにも拘わらず、 過去に「生成」した「スレッド」は存在していないにも拘わらず、
第6章(p.195) ※「可変長引数」で「NULL」を期待しているところを「ゼロ」(0)を「指定」する ※「可変長引数」で「NULL」を期待しているところに「ゼロ」(0)を「指定」する
第6章(p.209) 「IOCTL」でで気をつけないといけないのは 「IOCTL」で気をつけないといけないのは
第7章(p.226) すべて「プログラムのバグ」かいうと すべて「プログラムのバグ」かというと
第8章(p.271) 「snprintf関数」以外にも、「vsprintf関数」も新設されています。 「snprintf関数」以外にも、「vsnprintf関数」も新設されています。

戻る