データ
目次
基本型
代表的な基本型には次のようなものがあります (利用可能な型は処理系によって異なります)。
基本型 | 説明 |
---|---|
integer | 整数型 |
real | 実数型 |
char | 文字型 |
boolean | 論理型 |
リテラル
各データ型のリテラルの例は次の通りです。
種別 | リテラルの例 |
---|---|
整数 | 123 |
実数 | 3.14 1.23e-5 |
文字 | 'a' |
文字列 | 'abc' 'it''s' |
論理 | true false |
文字,文字列リテラルはともにシングルクォート '...' で囲って表します。
文字中でシングルクォート ' を表すには,2 個続けて '' と書きます。
単純型/構造型
データ型は大きく分けて,単純型,構造型,ポインタ型の 3 つに分けられます。
単純型 | 整数型,実数型,文字型,論理型,部分範囲型,列挙型 |
---|---|
構造型 | 配列型,レコード型,集合型,ファイル型 |
部分範囲型
部分範囲型 (subrange type) とは,取りうる値の範囲を限定した型です。
program sample(output);
var
n : 0..maxint;
d : '0'..'9';
begin
n := 0; { 可 }
n := -1; { 不可 }
d := '5'; { 可 }
d := 'a' { 不可 }
end.
部分範囲型は,0..maxint, '0'..'9' のように,下限..上限 の形で書きます。
例えば 1..5 と書いた場合,取りうる値は 1, 2, 3, 4, 5 のみです。
定数 maxint は整数の最大値を表す組込みの定数です。
型の定義
あらゆるデータ型は,次のように型名を定義することができます。
program sample(output);
type
natural = 0..maxint;
digit = '0'..'9';
var
n : natural;
d : digit;
begin
...
end.
列挙型
列挙型 (enumerated type) は,取りうる値を定数として列挙した型です。
program sample(output);
type
dayofweek = (mon, tue, wed, thu, fri, sat, sun);
var
d : dayofweek;
begin
d := tue
end.
文字列型
文字列型は string(長さ) と書かれます。文字列型の扱いは処理系依存です。
program sample(output);
var
s : string(256);
begin
s := 'hello';
writeln(s)
end.