PascalとC


非常に乱暴な比較
項目 Pascal C
注釈 { … }
(* … *)
/* … */
プログラム文 program プログラム名(入出力リスト); 該当なし。敢えて言うならmain()関数か?
主プログラム beginからend.まで mainという名前の関数
定数宣言 const 定数名 = 値; 該当なし。敢えていうなら
#define 定数名 値
であるが、これはマクロの定義。
整数型 integer int
他にshortやlongもある。 unsignedを付けると符合無し、 signedを付けると符合付きになる。
実数型 real 単精度がfloat、倍精度がdouble
文字 char char
変数宣言 var 変数名:型; 型 変数名;
配列宣言 var 変数名:array [添字下限..添字上限] of 型; 型 変数名[要素数];
文字列定数 '文字列' "文字列"
代入 変数 := 式; 変数 = 式;
比較演算子 =, <, > =<, => ==, <, > =<, =>
論理演算子 and, or, not &&, ||, !
ビット演算子   &, |
ブロック begin…end
以下、文のところにブロックを書ける。
{…}
以下、文のところにブロックを書ける。
ブロックの中で、ブロック内のみに有効な変数を宣言できる。
if文 if 条件 then 文 else 文; if (条件) 文; else 文;
whileループ while (条件) do 文; while (条件) 文;
forループ for 変数名:= 初期値 to 終値 do 文;
for 変数名:= 初期値 downto 終値 do 文;
for (文1;条件;文2) 文3;
まず文1を実行。 条件を満たしている間は文3→文2を実行。 実は、下記と等価。
文1;
while(条件) {
  文3;
  文2;
}
repeat…untilループ repeat 文 until 条件;
条件を満たすまで繰り返す。
do 文; while(条件);
条件を満たしている間繰り返す。
関数宣言
function 関数名(引数列):型;
ローカル変数宣言
ローカル関数/手続き宣言
begin
  …本体…
  関数名 := 戻り値;
end;
型 関数名(引数列)
{
  ローカル変数宣言
  …本体…
  return 戻り値;
}
手続き宣言
procedure 手続名(引数列);
ローカル変数宣言
ローカル関数/手続き宣言
begin
  …本体…
end;
void 関数名(引数列)
{
  ローカル変数宣言
   …本体…
}
(注: 正確には、関数と手続きの区別はない。これは単なるvoid型の関数)
     

(作成: 2000年9月27日, 最終更新: 2000年9月27日)