Salida de consola
Write / WriteLn
Para imprimir cadenas en Pascal, usa los procedimientos integrados Write o WriteLn; WriteLn añade automáticamente un salto de línea al final.
Se trata de un procedimiento nativo muy versátil en Pascal: acepta cualquier cantidad de argumentos de cualquier tipo de dato, convierte los valores a cadena automáticamente al imprimir y admite una sintaxis de formato especial para controlar el ancho de relleno numérico y la precisión de números de punto flotante.
WriteLn('Hello world!');
// Imprimir expresión entera
WriteLn('You can output an integer: ', 3 * 4);
// Entero alineado a la derecha con ancho total de 10 caracteres
WriteLn('You can pad an integer: ', 666:10);
// Formato de flotante: ancho total 1, 4 dígitos decimales
WriteLn('You can output a float: ', Pi:1:4);Lenguaje del código: JavaScript (javascript)
Saltos de línea manuales
Constante LineEnding
Si necesitas insertar un salto de línea manual dentro de una única cadena, usa la constante LineEnding proporcionada por la biblioteca estándar de Free Pascal; Castle Game Engine también ofrece la constante abreviada NL.
Las cadenas de Pascal no interpretan secuencias de escape de barra invertida (\n no tiene efecto). El siguiente ejemplo es incorrecto:
// Incorrecto: \n no se reconoce como salto de línea
WriteLn('One line.\nSecond line.');Lenguaje del código: JavaScript (javascript)
Dos formas válidas:
// Concatenar constante de salto de línea
WriteLn('One line.' + LineEnding + 'Second line.');
// Dos llamadas separadas a WriteLn (más limpio y recomendado)
WriteLn('One line.');
WriteLn('Second line.');Lenguaje del código: JavaScript (javascript)
Notas importantes
WriteLn solo funciona en aplicaciones de consola
Write/WriteLn solo funcionan en aplicaciones de consola. Debes indicar la directiva de compilación al principio del archivo principal del programa:
{$apptype CONSOLE}Lenguaje del código: PHP (php)
No uses el modo GUI:
{$apptype GUI} // Llamar WriteLn directamente en programas GUI genera erroresLenguaje del código: PHP (php)
- Unix/Linux/macOS: en algunos escenarios los programas GUI no fallan al imprimir, pero la salida no tiene sentido;
- Windows: ejecutar WriteLn directamente en aplicaciones gráficas GUI provoca errores en tiempo de ejecución.
Normas de registro de Castle Game Engine
Al desarrollar con Castle Game Engine, no uses WriteLn directamente para mensajes de depuración. Emplea las funciones de registro dedicadas:
WriteLnLog: registros de depuración normalesWriteLnWarning: registros de advertencia
El motor redirige automáticamente los registros a los destinos correspondientes:
- Sistemas Unix: salida de consola estándar stdout;
- Juegos GUI de Windows: escritura en archivos de registro locales;
- Plataforma Android: integración con registros del sistema Android, visibles mediante
adb logcat.
Tabla de términos equivalentes
| Término original en inglés | Significado en Pascal |
|---|---|
| Write / WriteLn | Salida sin salto de línea / Salida con salto de línea |
| LineEnding | Constante de salto de línea del sistema (multiplataforma) |
| NL | Constante abreviada de salto de línea de Castle |
| padding | Relleno de campos numéricos, ancho de alineación |
| precision | Precisión decimal de números flotantes |
| {$apptype CONSOLE} | Directiva de compilación para aplicaciones de consola |
| {$apptype GUI} | Directiva de compilación para aplicaciones gráficas |
| adb logcat | Herramienta de visualización de registros Android |
| standard output | Flujo de salida estándar (stdout) |
Ejemplo completo de esta sección
{$ifdef FPC} {$mode objfpc}{$H+}{$J-} {$endif}
{$ifdef MSWINDOWS} {$apptype CONSOLE} {$endif}
{$R+}
begin
WriteLn('Hello world!');
// Imprimir expresión entera
WriteLn('You can output an integer: ', 3 * 4);
// Entero alineado a la derecha con ancho total de 10 caracteres
WriteLn('You can pad an integer: ', 666:10);
// Formato de flotante: ancho total 1, 4 dígitos decimales
WriteLn('You can output a float: ', Pi:1:4);
// Incorrecto: \n no se reconoce como salto de línea
// WriteLn('One line.\nSecond line.');
// Concatenar constante de salto de línea
WriteLn('One line.' + LineEnding + 'Second line.');
// Dos llamadas separadas a WriteLn (más limpio y recomendado)
WriteLn('One line.');
WriteLn('Second line.');
end.Lenguaje del código: PHP (php)


Recuerda incluir la directiva de compilación anterior para que funcione