言語仕様の詳細

6.文字列

文字はShift-JISコードで保持されるが,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
 物理行の最大長は,WindowsのRich Editコントロールに依存する。
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の同義語として処理する。