argra****@users*****
argra****@users*****
2008年 2月 16日 (土) 01:35:47 JST
Index: docs/perl/5.10.0/perlfunc.pod diff -u docs/perl/5.10.0/perlfunc.pod:1.4 docs/perl/5.10.0/perlfunc.pod:1.5 --- docs/perl/5.10.0/perlfunc.pod:1.4 Fri Feb 15 00:25:09 2008 +++ docs/perl/5.10.0/perlfunc.pod Sat Feb 16 01:35:47 2008 @@ -7446,14 +7446,11 @@ C<readdir>、C<telldir>、C<seekdir>、C<rewinddir>、C<closedir> で 処理するために、EXPR で指定された名前のディレクトリをオープンします。 成功時には真を返します。 -DIRHANDLE may be an expression whose value can be used as an indirect -dirhandle, usually the real dirhandle name. -DIRHANDLEは間接ディレクトリハンドルとして使える値(普通は実際のディレクトリ +DIRHANDLE は間接ディレクトリハンドルとして使える値(普通は実際のディレクトリ ハンドルの名前)となる式でも構いません。 DIRHANDLE が未定義のスカラ値(または配列かハッシュの要素)の場合、その変数は 新しい無名ディレクトリハンドルへのリファレンスが代入されます。 DIRHANDLE は、FILEHANDLE とは別に名前空間を持っています。 -(TBT) =item ord EXPR X<ord> X<encoding> @@ -7833,9 +7830,9 @@ =end original - x ヌル文字 - X 1 文字後退 - @ 一番内側の () の組の開始位置から数えて、絶対位置までヌル文字で + x ヌル文字 + X 1 文字後退 + @ 一番内側の () の組の開始位置から数えて、絶対位置までヌル文字で 埋めるか切り詰める . 値で指定した絶対位置までヌル文字で埋めるか切り詰める ( () の組の開始 @@ -7851,23 +7848,63 @@ 以下に示す一つまたは複数の修飾子を、TEMPLATE の文字のいくつかにオプションで 付けることができます(表の 2 列目は、その修飾子が有効な文字です): +=begin original + ! sSlLiI Forces native (short, long, int) sizes instead of fixed (16-/32-bit) sizes. +=end original + + ! sSlLiI 固定の(16/32 ビット)サイズではなく、ネイティブな + (short, long, int)サイズを強制する。 + +=begin original + xX Make x and X act as alignment commands. +=end original + + xX x と X をアライメントコマンドとして振舞わせる。 + +=begin original + nNvV Treat integers as signed instead of unsigned. +=end original + + nNvV 整数を符号なしではなく符号付きとして扱わせる。 + +=begin original + @. Specify position as byte offset in the internal representation of the packed string. Efficient but dangerous. +=end original + + @. pack された内部表現のバイトオフセットとして位置を指定する。 + 効率的ですが危険です。 + +=begin original + > sSiIlLqQ Force big-endian byte-order on the type. jJfFdDpP (The "big end" touches the construct.) +=end original + + > sSiIlLqQ これらの型のバイト順をビッグエンディアンに強制します + jJfFdDpP (「大きい端」が構造に触れています) + +=begin original + < sSiIlLqQ Force little-endian byte-order on the type. jJfFdDpP (The "little end" touches the construct.) +=end original + + < sSiIlLqQ これらの型のバイト順をリトルエンディアンに強制します + jJfFdDpP (「小さい端」が構造に触れています) + =begin original The C<E<gt>> and C<E<lt>> modifiers can also be used on C<()>-groups, @@ -8475,13 +8512,12 @@ =end original -All integer and floating point formats as well as C<p> and C<P> and -C<()>-groups may be followed by the C<E<gt>> or C<E<lt>> modifiers -to force big- or little- endian byte-order, respectively. -This is especially useful, since C<n>, C<N>, C<v> and C<V> don't cover -signed integers, 64-bit integers and floating point values. However, -there are some things to keep in mind. -(TBT) +C<p> と C<P> と C<()> グループと同様、全ての整数と浮動小数点数の +フォーマットは C<E<gt>> や C<E<lt>> の修飾子をつけることで、それぞれ +ビッグエンディアンとリトルエンディアンに強制させることができます。 +C<n>, C<N>, C<v> and C<V> は符号付き整数、64 ビット整数、浮動小数点数に +対応していないので、これは特に有用です。 +しかし、心に留めておくべきことがいくつかあります。 =begin original @@ -8491,10 +8527,10 @@ =end original -Exchanging signed integers between different platforms only works -if all platforms store them in the same format. Most platforms store -signed integers in two's complement, so usually this is not an issue. -(TBT) +異なったプラットフォームで符号付き整数を交換することは、全ての +プラットフォームで同じフォーマットで保存されている場合にのみうまくいきます。 +ほとんどのプラットフォームでは符号付き整数は 2 の補数で保存するので、 +普通はこれは問題になりません。 =begin original @@ -8504,10 +8540,9 @@ =end original -The C<E<gt>> or C<E<lt>> modifiers can only be used on floating point -formats on big- or little-endian machines. Otherwise, attempting to -do so will result in a fatal error. -(TBT) +C<E<gt>> や C<E<lt>> の修飾子はビッグエンディアンやリトルエンディアンの +マシンでの浮動小数点フォーマットでのみ使えます。 +それ以外では、そのような試みは致命的エラーとなります。 =begin original @@ -8522,15 +8557,15 @@ =end original -Forcing big- or little-endian byte-order on floating point values for -data exchange can only work if all platforms are using the same -binary representation (e.g. IEEE floating point format). Even if all -platforms are using IEEE, there may be subtle differences. Being able -to use C<E<gt>> or C<E<lt>> on floating point values can be very useful, -but also very dangerous if you don't know exactly what you're doing. -It is definitely not a general way to portably store floating point -values. -(TBT) +データ交換のために浮動小数点数のバイト順をビッグエンディアンかリトル +エンディアンに強制することは、全てのプラットフォームが同じバイナリ +表現(例えば IEEE 浮動小数点フォーマット)の場合にのみうまくいきます。 +たとえ全てのプラットフォームが IEEE を使っていても、そこには微妙な違いが +あるかもしれません。 +浮動小数点数に C<E<gt>> や C<E<lt>> が使えることはとても便利な場合が +ありますが、もし自分が何をしているかを正確に理解していなければ、 +とても危険です。 +移植性のある浮動小数点数の保存のための一般的な方法がないことは確実です。 =begin original @@ -8542,12 +8577,11 @@ =end original -When using C<E<gt>> or C<E<lt>> on an C<()>-group, this will affect -all types inside the group that accept the byte-order modifiers, -including all subgroups. It will silently be ignored for all other -types. You are not allowed to override the byte-order within a group -that already has a byte-order modifier suffix. -(TBT) +C<()> グループで C<E<gt>> や C<E<lt>> を使うと、これは、副グループを +含む全ての型のうち、バイト順修飾子を受け入れる全てのものに影響与えます。 +その他の型については沈黙のうちに無視されます。 +既にバイト順接尾辞を持っているグループ内のバイト順を上書きすることは +できません。 =item * @@ -8614,14 +8648,14 @@ =end original -Pack and unpack can operate in two modes, character mode (C<C0> mode) where -the packed string is processed per character and UTF-8 mode (C<U0> mode) -where the packed string is processed in its UTF-8-encoded Unicode form on -a byte by byte basis. Character mode is the default unless the format string -starts with an C<U>. You can switch mode at any moment with an explicit -C<C0> or C<U0> in the format. A mode is in effect until the next mode switch -or until the end of the ()-group in which it was entered. -(TBT) +pack と unpack は二つのモードで操作します; pack された文字列を文字単位で +処理する文字モード (C<C0> モード) と、pack された文字列を、バイト毎に、 +その UTF-8 エンコードされた形式で処理するUTF-8 モード (C<U0> モード) です。 +文字モードはフォーマット文字列が C<U> で始まっていない限りはデフォルトです。 +モードはフォーマット中に明示的に C<C0> または C<U0> と書くことでいつでも +切り替えられます。 +モードは次のモードに切り替えられるか、現在の () グループが終了するまで +有効です。 =item *