文字列定数
文字列定数は、一重引用符で囲まれた文字列です。文字は、ISO / IEC8859-1で指定されている文字セットに従ってコード化されています。したがって、文字列定数にはスペースとアクセント付き文字を含めることができます。これらはこの文字セットに属しているためです。これは、文字列リテラルまたは単に文字列とも呼ばれます。
ただし、 STRINGのUTF-8エンコーディング コンパイルオプションが有効になっている場合、文字列リテラルはUTF-8形式で解釈されます。このエンコーディングは、ASCIIおよびLatin-1と互換性があります。したがって、16進コードと制御文字の特殊なケースはUTF-8でも有効です。
例: 'Hello world!'
注記
文字列リテラルの互換性はチェックされません。その結果、テキストエディタではすべての文字を入力できます。ただし、コンパイラは不明な文字を次のようにコンパイルします ?
。
16進コード
文字列リテラルにドル記号($)が含まれている場合、次の2文字は、ISO / IEC8859-1のコーディングに従って16進コードとして解釈されます。このコードはASCIIコードにも対応しています。さらに、特殊なケースと制御文字に注意してください。
$コード付きの文字列 | 解釈 |
---|---|
| 8ビットコード:ISO / IEC8859-1に従って解釈される2桁の16進数。 |
|
|
|
|
|
|
| 制御文字:改行(「$ R」に対応) |
| 制御文字:改行(「$ L」および「$ N」に対応) |
$コード付きの文字列 | 解釈 |
---|---|
| 制御文字:改行(に対応 |
| 制御文字:改行(に対応 |
| 制御文字:フォームフィード |
| 制御文字:改行(に対応 |
| 制御文字:タブ |
| ドル記号: |
| 単一引用符: |
VAR CONSTANT constA : STRING := 'Hello Allgäu'; constB : STRING := 'Hello Allgäu $21'; // Hello Allgaeu! END_VAR