Búsqueda personalizada
Curso de lenguaje C
 Principal
 Inicio
 Libros
 Librerías
 Mapa Web
 
 Recursos
 Artículos
 Cursos
 Ejercicios
 Guías de uso
 Mini Diccionario 
  
 Sintaxis
 ANSI C
 Ordinogramas
 Pascal
 Pseudocódigo 
  
 Acerca de
 Carlos Pes
 Colaboradores
 Taller de ideas 
  
 Sitios Amigos
 Blogs,...
 Informática,...
 Directorios,...
 Empresas,...
 Gente,...
 Ocio,...
 Tutoriales,...
  
 Mis Blogs en
 Blogger
 BuscoAfiliados 
  
 Contenidos > 1.9.1.3 Secuencias de escape

Secuencias de escape

Una secuencia de escape siempre representa a un carácter del ASCII. Dichos caracteres se pueden clasificar en:
  • Gráficos (se corresponden con los símbolos más usados para escribir por los humanos).
  • No gráficos (representan a acciones, como por ejemplo, mover el cursor de la pantalla al principio de la línea siguiente).
La forma más sencilla de escribir una secuencia de escape es con el carácter barra invertida (\), seguido de un carácter especial. Por tanto, cuando en la cadena de control de la función printf se escriba una secuencia de escape, o bien se mostrará un carácter gráfico por pantalla, o bien se realizará una acción. Por ahora, no es necesario conocer todas las secuencias de escape que existen en lenguaje C, pero sí, algunas de las más utilizadas:

Secuencias de escape en lenguaje C

Figura. Secuencias de escape más utilizadas.

En general, cuando se diseña el algoritmo de un programa, el programador no se preocupa del lugar exacto de la pantalla en donde van a aparecer los datos de salida del programa, ya que, este aspecto suele concretarse en la codificación.

En Windows, la patanlla (de la consola) está compuesta por 25 filas (líneas) y 80 columnas, es decir, en pantalla se pueden visualizar 2000 caracteres a la vez (25*80).

Normalmente, al ejecutar un programa escrito en lenguaje C, el cursor se posiciona (por defecto) en la primera columna de la primera fila.

_ (cursor)

 

A partir de esa posición, se mostrarán por pantalla los datos de salida de dicho programa.

Ejemplo 1 (ejemplo_11_33_1.c del libro): Si se escribe

#include <stdio.h>

int main()
{
   printf( "uno dos tres" );

   return 0;
}

Tal cual está escrita la función 
printf, por pantalla se verá el texto "uno dos tres" pegado a la esquina superior izquierda de la misma.

uno dos tres

 

Hasta ahora, no nos hemos preocupado del lugar exacto de la pantalla donde queremos que se muestren los datos de salida. Sin embargo, si deseamos visualizar dicho texto en otro lugar de la pantalla, por ejemplo, en la segunda línea:


uno dos tres

 

Esto se puede conseguir haciendo uso de la secuencia de escape nueva línea (
\n).

   printf( "\nuno dos tres" ); (ejemplo_11_33_2.c del libro)

Partiendo de que, inicialmente, el cursor se encuentre en la primera columna de la primera fila, es decir, en la esquina superior izquierda de la pantalla, la secuencia de escape nueva línea (\n
) lo moverá al principio de la segunda fila y, a continuación, se escribirá el texto "uno dos tres". Obsérvese que, los caracteres que forman la secuencia de escape, (\) y (n), no aparecen en pantalla.

La instrucción anterior hace lo mismo que las dos siguientes

   printf( "\n" );
   printf( "uno dos tres" ); (ejemplo_11_33_3.c del libro)

Ejemplo 2: Si por pantalla se quiere ver

uno
dos
tres

 

hay que escribir

   printf( "uno\ndos\ntres" ); (ejemplo_11_34_1.c del libro)

El proceso de ejecución de esta instrucción es el siguiente: justo en la esquina superior izquierda de la pantalla (primera línea) se muestra el texto "uno". Después, una secuencia de escape nueva línea (
\n) mueve el cursor al principio de la línea siguiente (segunda línea), en donde se visualiza el texto "dos". Posteriormente, otra secuencia de escape nueva línea (\n) vuelve a mover el cursor al principio de la línea siguiente (tercera línea) y, finalmente, se muestra el texto "tres".

La
instrucción anterior es equivalente a:

   printf( "uno" );
   printf( "\ndos" );
   printf( "\ntres" ); (ejemplo_11_34_2.c del libro)

Igualmente, se podría escribir

   printf( "uno\n" );
   printf( "dos\n" );
   printf( "tres" ); (ejemplo_11_34_3.c del libro)

Ejemplo 3: Para visualizar


   uno dos tres

 

se puede escribir

   printf( "\n   uno dos tres" ); (ejemplo_11_35.c del libro)

Ejemplo 4: Y para mostrar


   uno
   dos
   tres

 

escribiremos, por ejemplo,

   printf( "\n   uno\n   dos\n   tres" ); (ejemplo_11_36.c del libro)

La secuencia de escape tabulador horizontal (
\t) mueve el cursor a la posición siguiente del tabulador horizontal de la pantalla. Entre cada posición hay ocho caracteres, por tanto, dichas posiciones están en las columnas 1, 9, 17, 25, 33, 41, 49, 57, 65 y 73.

Ejemplo 5: De la instrucción

   printf( "diez\tveinte\ttreinta" ); (ejemplo_11_37.c del libro)

se obtiene por pantalla

diez    veinte  treinta

 

Obsérvese que, la d 
(de diez), la v (de veinte) y la primera t (de treinta) están en las posiciones del tabulador horizontal 1, 9 y 17, respectivamente. Gráficamente, representando los espacios en blanco mediante guiones (-), en pantalla se muestra:

1       9       17      25  ...
diez----veinte--treinta

 

Entre el carácter
 d (de diez) y la v (de veinte) hay exactamente ocho caracteres (la v no se cuenta), al igual que entre la v (de veinte) y la primera t (de treinta).

Las secuencias de escape comilla doble (\"
) y barra invertida (\\) sirven para mostrar por la pantalla los caracteres comilla doble (") y barra invertida (\), respectivamente.

Ejemplo 6 (ejemplo_11_39_1.c del libro): Al escribir

   printf( "\n\t\t7 de julio \"San Fermin\"" );

en la segunda línea de la pantalla se mostrará, a partir de la tercera posición del tabulador horizontal (columna 17), el mensaje: "7 de julio "San Fermin""

1       9       17      25 ...

                7 de julio "San Fermin"

 


Ejercicios Recomendados:
 Más información
Texto extraído de los apartados:

   11.8.1.3 Secuencias de escape

del libro 
EMPEZAR DE CERO A PROGRAMAR EN LENGUAJE C, (páginas 286-290).
 Contenidos > Apartado siguiente
1.9.2 La función scanf
 A destacar
Cursos Ejercicios Libros Enlaces Recomendados
Curso Diseño de Algoritmos
Curso Informática Básica
Curso Ingeniería del Software
Curso Marketing en Internet
Curso Lenguaje C
Curso Turbo Pascal
Curso Representación Datos
Ejercicios de Algoritmos
Ejercicios de Lenguaje C
Ejercicios de Ordinogramas
Ejercicios de Pascal
Empezar de cero a programar en lenguaje C
Domine la programación en lenguaje C
Empezar de cero a programar en Pascal
Tutoriales y Cursos
Gane dinero con su web
Comprar dominio
Programación Informática
100% Adsense
Búsqueda personalizada
 Más Webs Interesantes
© 2006-2008 CarlosPes.com