WRITE

ページ名:WRITE
  • WRITE

WRITE [ # Stream , ] Expression AS Datatype

WRITE [ # Stream , ] String [ , Length ]

WRITE [ # Stream , ] Pointer , Length

 

  • 特定のデータ型を書く

最初の構文は、バイナリ表現を使用してストリームStreamに式を書き込みます。

ストリームが指定されていない場合は、標準出力が使用されます。

文字列を書き込むときは、文字列の長さが文字列の内容の前に送信されます。

詳細については、Binary Data Representationを参照してください。

Expressionのデータ型は、NULL、ブール、バイト、短、整数、長、ポインタ、単一、浮動、日付、文字列、バリアント、任意の配列またはコレクション、または任意の構造体のいずれかになります。

Expressionがコレクション、配列、または構造体の場合、その内容は再帰的に書き込まれます。

構造体を書くときは、構造体型をデータ型として指定しなければなりません。

サポートされていないデータ型が書き込まれた場合、または循環参照が検出された場合は、エラーが発生します。

この命令は、データの書き込みにストリームのバイトオーダーを使用します。

文字列の内容を書く
2番目の構文は、文字列Stringから指定されたストリームにLengthバイトを書き込みます。
ストリームが指定されていない場合は、標準出力が使用されます。
Lengthが指定されていない場合は、Stringの長さが使用されます。

メモリの内容を書く
3番目の構文は、メモリアドレスPointerから指定されたストリームへLengthバイトを書き込みます。
ストリームが指定されていない場合は、標準出力が使用されます。
長さを指定しなければなりません、そうでなければ何もしません。

Compatibility with Gambas 2

見て!

WRITE #Stream、ExpressionはGambas 2.0のExpressionのバイナリ形式を書き込みます。 Gambas 3.0ではExpressionを文字列として書きます。
そのため、Gambasプロジェクトを2.0から3.0に変換するときにはすべてのWRITE命令を確認し、必要に応じてASデータ型を指定する必要があります。
デフォルトでは、コンパイラーは古いREAD構文と互換性があるので古いWRITE構文もサポートします。
READ / WRITE構文を書き換える場所を検出したい場合は、 " - no-old-read-write-syntax"フラグを使用してプロジェクトを手動でコンパイルできます。 2番目の構文が使用されている場合、WRITEのLength引数は必須になります。

ポインタをストリームとして使用することはできなくなりました。 代わりにMEMORY命令でメモリストリームを作成してください。

See also

 

 

シェアボタン: このページをSNSに投稿するのに便利です。

コメント

返信元返信をやめる

※ 悪質なユーザーの書き込みは制限します。

最新を表示する

NG表示方式

NGID一覧