Diferencia entre revisiones de «Programación en Ada/Unidades predefinidas/Ada.Text IO»

Contenido eliminado Contenido añadido
m →‎Portabilidad: Modificado debido a lo "descubierto" en la discusión :p
Línea 149:
 
* El salto de línea en sistemas Unix es ASCII.LF. En Windows es ASCII.LF & ASCII.CR. Sin embargo usando Get_Line, End_Of_Line y Put_Line se asegura portabilidad en este aspecto.
* Algunas funciones de '''Ada.Text_IO''' no funcionan correctamente en Windows, como el procedimiento ''New_Page''. Get_immediate(C,B) también puede dar problemas con algunas teclas en Linux.
* El procedimiento ''Get_Immediate'' en Windows captura el carácter sin mostrarlo en pantalla. En Unix se captura el carácter pero hay un "eco" y se muestra el carácter en pantalla. Por tanto si deseas que el carácter pulsado se vea en Windows, a continuación del ''Get_Immediate'' debes hacer un ''Put'' del carácter. Así mismo si en Unix no deseas que se vea el carácter, debes borrarlo con:
Put(ASCII.Bs & ' ' & ASCII.Bs);
* Algunas funciones de '''Ada.Text_IO''' no funcionan correctamente en Windows, como el procedimiento ''New_Page''.
* El carácter de control asociado a ciertas teclas puede variar entre Unix y Windows. Por tanto si tu programa intenta detectar pulsaciones de teclas específicas, como 'Enter', etc. deberás adecuar el carácter con el que se identifica la tecla. Algunos ejemplos:
Intro: character:=ASCII.Cr; {{Ada/--|Windows}}