25 lines
899 B
ObjectPascal
25 lines
899 B
ObjectPascal
program emptyString(output);
|
||
var
|
||
s: string(20);
|
||
begin
|
||
{ assigning an empty string }
|
||
s := '';
|
||
|
||
{ checking for an empty string }
|
||
writeLn( 'EQ(s, '''') :':20, EQ(s, ''):6);
|
||
writeLn( 'length(s) = 0 :':20, length(s) = 0:6);
|
||
|
||
{ checking that a string is not empty }
|
||
writeLn( 'NE(s, '''') :':20, NE(s, ''):6);
|
||
writeLn( 'length(s) > 0 :':20, length(s) > 0:6);
|
||
|
||
{ Beware: Only the string comparison functions (`EQ`, `NE`, etc.) take }
|
||
{ the string’s length into account. The symbolic `=` equal comparison }
|
||
{ operator, however, will pad operands with blanks to the same common }
|
||
{ length, and _subsequently_ compare individual string components. }
|
||
writeLn('!!! s = '' '' :':20, s = ' ':6);
|
||
{ If you want to perform the empty string check with an `=` comparison, }
|
||
{ you will need to call `trim` (remove trailing blanks) first. }
|
||
writeLn('trim(s) = '''' :':20, trim(s) = '':6)
|
||
end.
|