-7
begin
integer n;
procedure p(k: integer);
begin
print(n);
end;
n := 5;
p(n/0);
end;
出力:値によって コール:手順5名前でコールすると、次のコードでゼロで割るとエラーが発生しないのはなぜですか?
begin
integer n;
procedure p(k: integer);
begin
print(n);
end;
n := 5;
p(n/0);
end;
出力:値によって コール:手順5名前でコールすると、次のコードでゼロで割るとエラーが発生しないのはなぜですか?
パラメータPが整数ですが、N/0でそれを呼び出すとき、:名前によってゼロエラー コール除算n/0のタイプは実数で、互換性はありません。
パスカルでは、begin endの間に新しいプロシージャを作成できません。
(あなたのコードは、CとPascalの混合のように見える)私の英語については申し訳ありません
:(
これは、パスカルのように見える、ではない値の呼び出しによって呼び出しでC. – dbush
は、パラメータが前に実行されます関数であるため、 'n/0'は' p'を呼び出す前に実行され、0で割り切れます。 'n'で、パラメータ 'k'ではない)を出力すると、除算は決して起こらず、エラーは発生しません。また、これはCではありません。 – paulotorrens
Pascalコンパイラでは? – MartynA