本書の内容に、以下の誤り・変更がございました。
ご購入いただいた皆様に謹んでお詫びし、訂正させていただきます。
■第5刷
——————————————————-
p.293 ↑2
——————————————————-
【誤】
i, &a[i], i < 0 ? ‘-‘ : ‘+’,
【正】
i + 2, &a[i + 2], i < 0 ? ‘-‘ : ‘+’,
■第3刷
——————————————————-
p.174 ↑14行目
——————————————————-
【誤】
int ax = 0; // この宣言を追加する際に…
【正】
int ax = 0; // この宣言を通過する際に…
——————————————————-
p.174 ↑3行目
——————————————————-
【誤】
static int sx = 0; // この宣言を追加する際に…
【正】
static int sx = 0; // この宣言を通過する際に…
——————————————————-
p.312 List 11-6内↑6行目
——————————————————-
【誤】
printf(“コピーするのは : “, tmp);
【正】
printf(“コピーするのは : “);
——————————————————-
p.315 Column 11-1内↓6行目
——————————————————-
【誤】
printf(“コピーするのは : “, tmp);
【正】
printf(“コピーするのは : “);
■第2刷
——————————————————-
p.208 ↑3
——————————————————-
【誤】
それ以外が 1 のビットとの論理和
【正】
それ以外が 0 のビットとの論理和
——————————————————-
p.208 ↑1
——————————————————-
【誤】
それ以外が 1 のビットとの排他的論理和
【正】
それ以外が 0 のビットとの排他的論理和
——————————————————-
p.211 ↑3行目
——————————————————-
【誤】
x13 はunsigned 型です。
【正】
x13U はunsigned 型です。
——————————————————-
p.222 ↑3行目
——————————————————-
【誤】
またはlong double 型もしくはfloat 型に変換する
【正】
またはlong double 型をdouble 型もしくはfloat 型に変換する
——————————————————-
p.223 ↓6行目
——————————————————-
【誤】
型変換は、共通の実数型を決めるために行う。
【正】
型変換は、共通の算術型を決めるために行う。
——————————————————-
p.233 ↑3行目
——————————————————-
【誤】
x = ++i, ++j;
【正】
x = (++i, ++j);
——————————————————-
p.237 ↑7行目
——————————————————-
【誤】
tmp < Dog || tmp > Seal + 1
【正】
tmp < Dog || tmp > Seal
——————————————————-
p.273 chap09/summary.c 内↓19行目
——————————————————-
【誤】
putchar(‘ ” ‘);
【正】
putchar(‘ \‘ ‘);
——————————————————-
p.318 「strcpy」表内
——————————————————-
【誤】
形式 char *strcpy(char * retrict s1, const char * retrict s2);
【正】
形式 char *strcpy(char * restrict s1, const char * restrict s2);
——————————————————-
p.318 「strncpy」表内
——————————————————-
【誤】
形式 char *strncpy(char * retrict s1, const char * retrict s2, size_t n);
【正】
形式 char *strncpy(char * restrict s1, const char * restrict s2, size_t n);
——————————————————-
p.320 「strcat」表内
——————————————————-
【誤】
形式 char *strcat(char * retrict s1, const char * retrict s2);
【正】
形式 char *strcat(char * restrict s1, const char * restrict s2);
——————————————————-
p.320 「strncat」表内
——————————————————-
【誤】
形式 char *strncat(char * retrict s1, const char * retrict s2, size_t n)
【正】
形式 char *strncat(char * restrict s1, const char * restrict s2, size_t n)
——————————————————-
p.337 ↑4行目
——————————————————-
【誤】
ポインタp が指す構造体メンバmem
【正】
ポインタp が指す構造体のメンバmem
——————————————————-
p.344 ↑6行目
——————————————————-
【誤】
Point というtypedef のみ
【正】
Point というtypedef 名のみ
■第1刷
——————————————————-
p.37 Fig.2-9 下枠
——————————————————-
【誤】
(dobule)(a + b)
【正】
(double)(a + b)
——————————————————-
p.93 Fig.4-15 中枠
——————————————————-
【誤】
breeak文
【正】
break文
—————————————————–
p.94 ↑5
——————————————————-
【誤】
for文が行うループは、while文と同じく後判定繰返しです。
【正】
for文が行うループは、while文と同じく前判定繰返しです。
—————————————————–
p.95 ↓20
——————————————————-
【誤】
後判定繰返しを行うfor文は
【正】
前判定繰返しを行うfor文は
——————————————————-
p.136 Column 5-2 ↑2
——————————————————-
【誤】
可変長配列は、言語設計上のミスと考えるべきです、
【正】
可変長配列は、言語設計上のミスと考えるべきです。
——————————————————-
p.204 Fig.7-17
——————————————————-
【誤】
左にずらす(値が2倍になる)
【正】
左にずらす(値が2^n倍になる)〔nは上付き〕
——————————————————-
【誤】
右にずらす(値が1/2倍になる)
【正】
右にずらす(値が1/2^n倍になる)〔nは上付き〕
——————————————————-
p.206 ↑5
——————————————————-
【誤】
int int_bit(); …
【正】
int int_bit(void); …
——————————————————-
p.251 ↓6 ↓9 ↓11
——————————————————-
【誤】
文字リテラル
【正】
文字定数
——————————————————-
p.253 ↓19
——————————————————-
【誤】
文字リテラル
【正】
文字定数
——————————————————-
p.314 List 11-7内↓9行目
——————————————————-
【誤】
printf(“文字列:”, tmp);
【正】
printf(“文字列:”);
——————————————————-
p.318 List 11-9内↓11行目
——————————————————-
【誤】
printf(“文字列:”, st);
【正】
printf(“文字列:”);
——————————————————-
p.325 演習11-11
——————————————————-
【変更前】
文字列str内のすべての数字文字を削除する関数を作成せよ。
【変更後】
文字列str内のすべての数字文字を除去する関数を作成せよ。
——————————————————-
p.389 ↑15
——————————————————-
【誤】
JIS X3010-1993:プログラミング言語C
【正】
JIS X3010-1993:プログラム言語C
——————————————————-
p.400 右段↓10
——————————————————-
【誤】
後判定繰返し 87,94
【正】
後判定繰返し 87
——————————————————-
p.403 左段↓4
——————————————————-
【誤】
繰返し 75
後判定~ 87,94
前判定~ 87
【正】
繰返し 75
後判定~ 87
前判定~ 87,94