在 free pascal 中使用类似于 \n 而不是空 WriteLn() 的东西
Using something similar to \n rather than empty WriteLn() in free pascal
procedure A();
//Do something useful
WriteLn('This is a message');
procedure B();
//Do something else useful
WriteLn(); //<---Empty WriteLn();
WriteLn('This is another message');
procedure C();
//Do something else useful
A();
B();
WriteLn(); //<---Empty WriteLn();
WriteLn('This is another message from C');
这只有3个过程,而我的程序有3个以上这样的过程...有没有办法让我不必把空的WriteLn(); (类似于 html 中的 \n)出于审美原因在大多数程序中?
谢谢!
执行此操作的正确方法实际上是使用空 Writeln
。第二个最好的,也是独立于平台的方法是使用类似的东西:
Writeln(sLineBreak + sLineBreak + 'This is another message');
(sLineBreak
在单元 System
中定义,AFAIK)。
但是如果你已经觉得使用一个空的Writeln
太过分了,那么你可以在字符串中插入回车符return和换行符,如下:
Windows
加一个回车就可以了return(#13
)/换行(#10
)组合:
procedure B();
begin
//Do something else useful
WriteLn(#13#10'This is another message');
end;
你甚至可以有多个这样的空行:
Writeln(#13#10#13#10'Hello');
Writeln('-----'#13#10#13#10);
非Windows
如果您在非 Windows 平台上,可能 #10
(换行)就可以了。大多数非 Windows 平台不需要回车 return.
FWIW,您也可以使用 ^J
而不是 #10
,您可以使用 ^M
而不是 #13
。这些是等价物:
Writeln(^M^J^M^J'Hello');
Writeln('-----'^M^J^M^J);
^M
就是Ctrl+M,有ASCII码77-64=13! ^J
是 74 - 64 = 10。
procedure A();
//Do something useful
WriteLn('This is a message');
procedure B();
//Do something else useful
WriteLn(); //<---Empty WriteLn();
WriteLn('This is another message');
procedure C();
//Do something else useful
A();
B();
WriteLn(); //<---Empty WriteLn();
WriteLn('This is another message from C');
这只有3个过程,而我的程序有3个以上这样的过程...有没有办法让我不必把空的WriteLn(); (类似于 html 中的 \n)出于审美原因在大多数程序中?
谢谢!
执行此操作的正确方法实际上是使用空 Writeln
。第二个最好的,也是独立于平台的方法是使用类似的东西:
Writeln(sLineBreak + sLineBreak + 'This is another message');
(sLineBreak
在单元 System
中定义,AFAIK)。
但是如果你已经觉得使用一个空的Writeln
太过分了,那么你可以在字符串中插入回车符return和换行符,如下:
Windows
加一个回车就可以了return(#13
)/换行(#10
)组合:
procedure B();
begin
//Do something else useful
WriteLn(#13#10'This is another message');
end;
你甚至可以有多个这样的空行:
Writeln(#13#10#13#10'Hello');
Writeln('-----'#13#10#13#10);
非Windows
如果您在非 Windows 平台上,可能 #10
(换行)就可以了。大多数非 Windows 平台不需要回车 return.
FWIW,您也可以使用 ^J
而不是 #10
,您可以使用 ^M
而不是 #13
。这些是等价物:
Writeln(^M^J^M^J'Hello');
Writeln('-----'^M^J^M^J);
^M
就是Ctrl+M,有ASCII码77-64=13! ^J
是 74 - 64 = 10。