K&R2の日本語訳について(第2章)

\documentstyle[ASCMAC,a4j,12pt]{jarticle}

\pagestyle{plain}

\begin{document}

\title{K&R2日本語訳訂正表}
\author{第2章}
\date{}
\maketitle


43 ページ,

2 行目,
行末に「や定数」を入れる。

5 行目,
ここの改行は不要。「一方」は不要。

6 行目,
「ビルディング・ブロック」は訳されてない。「ブロック」?

$-$10 行目,
「文字列定数はコンパイル時に連結できる」は
「複数の文字列定数はコンパイル時に連結されるかも知れない」。

$-$9 行目,
原文は formalizing a feature of long standing だけど,
「永く待たれていた……」って意味になるかなあ……。

$-$4 行目,
「これまで」は原文になし。

$-$3 行目,
「まず…」は
「これらの名前は英字と数字でできていなければならない。
最初の文字は英字でなければならない。
下線 {\verb'"_"'} は英字とみなされる。
下線は,長い変数名を読みやすくするのに時として有用である。
しかし,変数名を下線で始めてはならない。
ライブラリ・ルーチンがしばしばそういう名前を使うから。
大文字と小文字は区別される。
よって,{\tt x} と {\tt X} は二つの異った名前である。
伝統的に……」。

\vspace{3mm}

44 ページ,

1 行目,
「外部変数名」は「外部変数」。

2 行目,
「字数は 31 より少なくするほうがいいこともある」は
「この上限の字数が 31 未満であることもある」。

4 行目,
「1段(大文字か小文字)……」はわかりにくいと思う。
「大文字小文字の区別はないとしている」などと意訳する?

13 行目,
「一バイト,ローカルな文字セットの一文字を保持できる」

\vspace{3mm}

45 ページ,

4 行目,
「この {\tt char}」は「ただの {\tt char}」。

7 行目,
「{\tt float} と {\tt double} と {\tt long double} とが
それぞれ1,2,3の異なる大きさになっていることもありうる」
という日本語訳は意味不明。
三つがすべて同じ大きさでも,二つが同じ大きさで他の一つが別の大きさでも,
あるいは三つがすべて異なる大きさでもよい,という意味なのだが,
どう訳したらよいものか。
うーむ。

演習 2--1,
最後に
「計算で求めようとするとむずかしいが,
種々の浮動小数点型の範囲を定めよ。」
を入れる。

$-$12 行目,
「一方」は不要。

$-$9 行目,
「ものである」は不要。

$-$1 行目,
「次に」は不要。
「単一の引用符」は「一重引用符」。

\vspace{3mm}

46 ページ,

5 行目,
「扱ってよい」は「扱われる」。

6 行目,
「である」は「であるが」。

7 行目,
「系列」は「列」。

8 行目,
「系列」は「列」。
「あくまでも」は不要。

11 行目,
「8進数」は「八進数字」。

14 行目,
「1桁あるいは2桁」は「1桁以上」。
「16進数字」は「十六進数字」。

21 行目,
「系列」は「列」。

24 行目,
「単一引用符」は「一重引用符」。

\vspace{3mm}

47 ページ,

1 行目,
「ヌル文字」は「ナル文字」だけど,方言と考えればこのままでもいいか……。

10 行目,
「うるう年」は「うるう年に定義」。

16 行目,
「この場合」は原文にない。

17 行目,
「区切りを表わす」は「境界を定める」。

18 行目,
「系列」は「列」。
「当てはまる」は「使える」。
「自体である」は「を表わす」。
「文字定数」は「文字列定数」。

19 行目,
「連結することもできる」は「連結されうる」。

23 行目,
「扱うとき」は「分割するとき」。

25 行目,
「技術的には,文字列は各要素が1文字である配列である」は
「技術的には,文字列定数は文字の配列である」。

\vspace{3mm}

48 ページ,

4 行目,
「標準関数」は「標準ライブラリ関数」。
「{\verb"'0'"}」は「終わりの {\verb"'\0'"}」。

5 行目,
「その使用例」は「我々のバージョン」。

15 行目,
「{\tt strlen} その他の文字列関数は
標準ヘッダ {\tt } で宣言されている」となる。

18 行目,
「求めるのに使われている」は「あらわすのに使われる」。
「しかし」は不要。

19 行目,
「なのである」は「である」。

20 行目,
「さて,」は不要。

22 行目,
「整数定数」は「整数定数値」。

24 行目,
「列」は「例」。

31 行目,
「異なる列挙の中の名前は異なったものでなければならない」とする。
「しかし」は不要。
「のほう」も不要。

\vspace{3mm}

49 ページ,

3 行目,
「自動的に」は「あなたに代わって」ぐらい。

4 行目,
「コンパイラでは」は「コンパイラは」。

5 行目,
「必要がない」は「必要はない」。

7 行目,
「形式」は「の形」。

14 行目,
字下げ不要。

20 行目,
「記述」は「形」。
「コメントの記入や将来の修正には便利である」は
「各宣言にコメントを添えたり将来修正したりするには便利である」。

29 行目,
「始まるときに」は「始まる前に」。

\vspace{3mm}

50 ページ,

1 行目,
「初期化された」は「初期化される」。
「が実行されるつど」は「にはいるつど」。

2 行目,
「。」の次に「初期値は任意の式でよい」。
「これに対し」は不要。

3 行目,
「不定なの」は「不定な」または「不定の」。

10 行目,
字下げ不要。

13 行目,
「次第」は「定義」。

18 行目,
「うるう年(leap)」は「うるう(leap)年」。

\vspace{3mm}

51 ページ,

1 行目,
「ところで,」は「二項の」。
「同じ優先度の {\tt *}, {\tt /}, \verb"%" よりも」は
「{\tt *}, {\tt /}, \verb"%" の優先度よりも」。

2 行目,
「まとめられて評価される」は
「結合する」。

11 行目,
「あり,これらは……もつ」は「ある」。

12 行目,
「式 {\tt i < lim - 1}」は「{\tt i < lim - 1} のような式」。

14 行目,
「その評価は真か偽かの結果が得られた時点で終る」は
「その評価は結果の真偽がわかった時点で終わる」。
「Cプログラムの大部分は」は「大部分のCプログラムは」。

15 行目,
「で示した関数」は「で書いた入力関数」。

16 行目,
「を使った」は「の」。
「になる」は「だった」。

19 行目,
「明らかに,」は不要。

23 行目,
「誤り」は「不適当」。

24 行目,
「一方,」は不要。

\vspace{3mm}

52 ページ,

1 行目,
「余分な」は「これ以上」。

4 行目,
「望ましい」は「求める」。

7 行目,
「すなわち真」「すなわち偽」は不要。

12 行目,
「と同じである」は「よりもよく使われる」? %
「{\tt !valid} の構文」は「{\tt !valid} のような構文」。

13 行目,
「非常に」は不要。

18 行目,
私訳
「一つの演算子が,異なる型の被演算数を伴っている場合,
それらは少数の規則に従って共通の型へ変換される」。

25 行目,
「まず」は不要。

26 行目,
「10 進数列」は「数字の列」。

\vspace{3mm}

53 ページ,

11 行目,
「輪じた」は「論じた」。

14 行目,
「正の」は不要。

$-$8 行目,
「のみ通用する」は「うまく働く」。
「各文字は連続していて」以下の私訳
「各文字は連続していて A と Z の間には英字しかないからである。
しかし,後者は EBCDIC 文字セットでは成り立たないので,
このプログラムは EBCDIC では英字以外も変換してしまうだろう」

$-$3 行目,
「ところで」は不要。

\vspace{3mm}

54 ページ,

5 行目,
「こうした」は不要。

10 行目,
「正」はゴチの必要なし。

11 行目,
「標準文字セット」は「標準印字可能文字セット」。

16 行目,
「\verb"||"」の前に 「\verb"&&" や」を補え。

19 行目,
「10 進数」は「十進数字」。
「。」の後に
「しかしながら,{\tt isdigit} のような関数は
真に対し任意の非零を返すことがある。」を補え。

$-$3 行目,
改行は不要である。

\vspace{3mm}

55 ページ,

6 行目,
「Cの」は不要。

10 行目,
「ところで」は不要。

11 行目,
私訳
「後題は,符号付きと符号なしの値の比較が
さまざまの整数型の大きさに依存するためである」

14 行目,
「も成り立ってしまう」は「である」。

21 行目,
「余分な」は「長すぎる」。

$-$3 行目,
「次に,」は不要。

\vspace{3mm}

56 ページ,

8 行目,
「式」は「expression」。
「型名」は「指名された型」。

9 行目,
私訳
「expression が指定された型をもつ変数に代入され,
その変数が全体の構文の中で使われるようなものである」

11 行目,
「他の型」は「他のもの」。
「出す」の次に「。」を補う。

15 行目,
「自身は」は「{\tt n} 自身は」。

16 行目,
「同じ優先度」は「同じ高い優先度」。

17 行目,
私訳
「もしも引数が関数プロトタイプによって宣言されている場合
--- 通常そうすべきだが ---,
関数が呼び出されたとき,
宣言によりすべての引数の自動的な型変換が行われる」。

$-$5 行目,
私訳
「という呼び出しがあると,整数の 2 は {\tt double} の値 2.0 に
変換される。キャストは不要である。

$-$2 行目,
「定義されている」は「含まれている」。

\vspace{3mm}

57 ページ,

演習 2-3,
「16 進数」は「十六進数字」。「文字」は「数字」。

$-$6, 5 行目,
「$n$ の値」は「式の値」かも知れない。
「その値」が無難か?

$-$4 行目,
「文脈によって」は「文脈では」。

\vspace{3mm}

58 ページ,

2 行目,
「6 である」は「6 になる」。

3 行目,
「次のように」の前で改行。

8 行目,
私訳
「しかし,どちらかがとくに要求される場合もある」。

19 行目,
字下げ不要。
「このプログラムでは,」は不要。

$-$6 行目,
「同等」は「完全に同等」。

$-$7 行目,
「文脈」は「構文」。

\vspace{3mm}

59 ページ,

5 行目,
「関数」は「標準関数」。

6 行目,
「次の」は不要。

7 行目,
「ある」の前に「{\tt s} に」を補う。

20 行目,
「次のループに対して」は「ループの次のパスに対する」。

22 行目,
「を書け」の前に「の代替版」を入れる。

\vspace{3mm}

60 ページ,

7 行目,
字下げする。

14 行目,
私訳
「ビットごとの排他的 OR 演算子 \verb"^" では,
各ビット位置ごとに,
二つの被演算数が異なるビットをもてば 1 が,
同じビットをもてば 0 がセットされる」。

17 行目,
「真の値」は「真理値」。

19 行目,
「シフトするのに使われる」は
「左あるいは右にシフトする。右被演算数は正でなければならない」。

21 行目,
「符号なし数」は「{\tt unsigned} 値」。
(次の「符号付き」はそのままでよい。)

22 行目,
「符号桁」は「符号ビット」。

$-$3 行目,
「語長」は「ワードの長さ」。

\vspace{3mm}

61 ページ,

1 行目,
私訳
「この移植可能な形は余計な出費を含まない」。

2 行目,
「次に,」は不要。
「ビット演算子のいくつかの例」は「いくつかのビット演算子の例」。

12 行目,
「語」は「ワード」。
「\verb"~0" ではビットが 1 になる」は
「\verb"~0" は全ビットが 1 である」。

$-$5 行目,
「左辺が右辺に再び現われる」は
「左辺の変数が右辺にすぐ再び現われる」。

\vspace{3mm}

63 ページ,

2 行目,
「ときにわかりやすい」は「方法によく対応する」。

3 行目,
「ずつ」は不要。

8 行目,
私訳
「本当に同じかどうかを手間をかけてチェックしたり,
なぜ違うのかと思ったりしなくてすむからである」。

演習 2-9,
「\verb"x & (x-1)"」は「\verb"x &= (x-1)"」。

\vspace{3mm}

64 ページ,

7 行目,
「と何ら変わりなく」は「が使われるところではどこでも」

8 行目,
「前半」は「前のほう」。

11 行目,
「に変換される」は「である」。

16 行目,
「ブランク1個」は「ブランクを1個」。
「各行」は「各行(最終行もこめて)」。

$-$6 行目,
「他のすべての要素は1ブランク空けて続ける」は
「他のすべての要素には1ブランクが続く」。

$-$5 行目,
「同じ意味の」は「同等な」。
「便利」は「コンパクト」。

\vspace{3mm}

65 ページ,

3 行目,
「ものである」は不要。

4 行目,
「各行」は「行」。

8 行目,
最後に,「コンマ演算子は第3章で述べる。」を補う。

12 行目,
「全体にカッコを付けなければ」は「きちんとカッコをつけなければ」?

$-$2 行目,
「に対する評価」は「が評価される」。

$-$1 行目,
「\verb"&&",」の次に「\verb"||",」を補う。

\vspace{3mm}

66 ページ,

3 行目,
「外部変数」は「変数」。
「その変数が他方に」は「その変数に他方が」。
「実行順序」は「評価順序」。

8 行目,
「違った結果になる」は「違った結果になりうる」。

14 行目,
私訳
「副作用を引き起こす式では,式に出てくる変数が更新される順序が微妙に関係する」

17 行目,
「形」は「方法」。

19 行目,
私訳
「いつ式の中で副作用(変数への代入)が…」

$-$2 行目,
「計算機によって」は「種々の計算機で」。

\begin{flushright}
岩瀬順一
\end{flushright}

\end{document}