前頁  次頁

言語仕様の詳細(JISとの相違)

6.文字列

     文字はEUCで保持されるが,ORD関数,CHR$関数はJISコードに基づいて定義される。

[規格との相違]
6.4.4
  CHR$(m)
     JIS文字コードがmの文字。文字が定義されない数を指定するとextype 4002の続行不能例外を起こす。
  ORD(a$)
     規格中の「文字集合における順序位置」をJIS文字コードと解釈する。
  USING$
     USING$関数で10.4.5(3)(4)に該当する例外状態となったとき,when本体にない場合の省略時想定例外状態処理では,単に関数値を書式指定文字列の長さ分の星印とするのみとする。(書式なし出力の表現で値を報告することはしない)
  MAXLEN(s$)
     文字列長の制限がないとき2147483647を返す。
6.6
    文字列の最大長宣言は,バイト単位での文字数。

[処理系定義の事項]
6.1.6
     物理行の最大長は,KylixのMemoコントロールに依存する。
6.2.4(2)
     文字列変数の最大長は,システム依存。ただし,2147483647を超えることはない。
6.2.4(6)
    文字列変数の初期値は空文字列。

[拡張]
    option文における選択子として,CHARACTER KANJI と CHARACTER BYTEを追加している。
    CHARACTER BYTEを指定すると,バイト単位で文字列を処理する。
    option characterを書かないか,CHARACTER KANJIを指定すると,2バイト文字は2バイトで1文字として扱う。

CHARACTER BYTEを指定しても,JISの標準文字集合の扱いは変化しない。

    COLLATE NATIVEをCHARACTER BYTEの同義語として処理する。