文字定数は,区切り文字 (アポストロフィまたは引用符) で囲まれた文字列です。以下のいずれかの形式を取ります。
[k_]'ch[...]' [C] [k_]"ch[...]" [C]
k
省略可能な種別パラメタで,1 (基本値)。その後に下線 (_) を付ける必要があります。文字定数では,種別値は定数の前に置く必要があることに注意してください。
ch
ASCII 文字。
C
C 文字指定子。C 文字列は,印字不能文字を含む文字列を定義するために使用することができます。詳細については,「文字定数中の C 文字列」を参照してください。
規則と振る舞い
文字定数の値は,区切り文字で囲まれている文字列です。この値には区切り文字は含まれませんが,区切り文字に囲まれている空白やタブはすべて含まれます。
文字定数をアポストロフィで囲む場合,文字定数にアポストロフィを入れるには,アポストロフィを 2 つ続けて宣言します ('')。
同じように,文字定数を引用符で囲む場合,文字定数に引用符を入れるには,引用符を 2 つ続けて宣言します ("")。
文字定数の長さは,区切り文字間の文字数ですが,2 つ続けて置かれている区切り文字は 1 文字として計算されます。
文字定数の長さは 0 ~ 2000 の範囲でなくてはなりません。個々の文字は 1 バイトのメモリーを占有します。
文字定数が数値の文脈 (たとえば算術代入文の右辺の式など) に現れた場合,ホレリス定数と見なされます。
長さゼロの文字定数は,2 つの連続したアポストロフィまたは引用符として表現されます。
例
以下に,文字定数として有効な例と無効な例をいくつか示します。
有効 | |
"WHAT KIND TYPE? " | |
'TODAY''S DATE IS: ' | |
"The average is: " | |
'' | |
無効 | 説明 |
'HEADINGS) | 末尾にアポストロフィがありません。 |
'Map Number:" | 先頭の区切り文字が末尾の区切り文字と一致していません。 |
詳細は,「文字型の宣言文」を参照してください。