Difference between revisions of "Slash"
m (→division: language/grammar) |
m (→comment: line number) |
||
Line 56: | Line 56: | ||
Two slashes back to back introduce [[Comments|comments]] till the [[End of Line|end of line]]. | Two slashes back to back introduce [[Comments|comments]] till the [[End of Line|end of line]]. | ||
This is also known as “Delphi-style comment”. | This is also known as “Delphi-style comment”. | ||
− | <syntaxhighlight lang="delphi"> | + | <syntaxhighlight lang="delphi" line start="1345"> |
while (buf^ in [' ', #9, #10]) do // kill separators | while (buf^ in [' ', #9, #10]) do // kill separators | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 19:07, 22 March 2018
│
Deutsch (de) │
English (en) │
suomi (fi) │
français (fr) │
русский (ru) │
A single slash, surrounded by non-slash characters is regarded as the division operator. Two consecutive slashes are regarded as comment introducers.
division
The slash /
is used in a Pascal program to perform division.
The results are always real values.
If you want to perform integer division the div
operator has to be used.
A := 3 / 4;
After this operation the variable A
holds the value 0.75
(assuming A
is delared as a real value type, otherwise the compiler generates an incompatible type error).
The value on the right side of the slash must not be zero, or a division by zero error occurs.
In modes where exceptions are available (e.g. ObjFPC and Delphi mode) this condition can be caught by using a try
… except
block.
Otherwise a run-time error occurs (RTE 200).
program divZeroDemo(input, output, stderr);
// ObjFPC mode for exceptions
{$mode objfpc}
uses
// make exception EDivByZero known
sysutils;
const
dividend = 1.1;
resourcestring
enterDivisorPrompt = 'Enter divisor:';
divisionOperationExceptionless = 'Division did not cause an exception.';
zeroDivisionFailure = 'Error: Attempted to divide by zero.';
var
divisor, quotient: single;
begin
writeLn(enterDivisorPrompt);
readLn(divisor);
try
quotient := dividend / divisor;
writeLn(divisionOperationExceptionless);
except on EDivByZero do
writeLn(zeroDivisionFailure);
end;
end.
Note: Exception handling is expensive. A plain test whether the user input is non-zero would have been in the above example more sophisticated.
comment
Two slashes back to back introduce comments till the end of line. This is also known as “Delphi-style comment”.
1345while (buf^ in [' ', #9, #10]) do // kill separators
see also
single characters |
|
character pairs |
|