Bibliotecas de entrada y salida en lenguaje c

Solo disponible en BuenasTareas
  • Páginas : 9 (2225 palabras )
  • Descarga(s) : 0
  • Publicado : 29 de noviembre de 2011
Leer documento completo
Vista previa del texto
ENTRADA Y SALIDA
En C no existe ninguna palabra clave para realizar la entrada y salida de datos (E/S). Se realizan a través de funciones de biblioteca (concretamente, la biblioteca stdio.h, ver capítulo 13).
E/S por consola
Las funciones principales que realizan la entrada y salida sin formato son:getchar(): Lee un carácter del teclado. Espera hasta que se pulsa una tecla y entonces devuelvesu valor.
putchar(): Imprime un carácter en la pantalla en la posición actual del cursor.
gets(): Lee una cadena de caracteres introducida por el teclado y la sitúa en una dirección apuntada por su argumento de tipo puntero a carácter.
puts(): Escribe su argumento de tipo cadena en la pantalla seguida de un carácter de salto de línea.
El siguiente fragmento de código lee uncarácter del teclado y lo muestra por pantalla. A continuación lee una cadena (de 10 caracteres incluido el carácter nulo) y también la muestra por pantalla:
#include
main()
{
char cadena[10];
int i;
i=getchar();
putchar(i);
gets(cadena);
puts(cadena);
}
Las funciones principales que realizan la entrada y salida con formato, es decir, se pueden leer y escribir en distintas formascontroladas, son:
printf(): Escribe datos en la consola con el fo rmato especificado.
scanf(): Función de entrada por consola con el formato especificado.
Sus prototipos son los siguientes:
int printf (" caracteres de transmisión y escape", lista de argumentos);
int scanf (" caracteres de transmisión y escape", lista de argumentos);
En la función printf() (conscanf() no), entre las comillas se pueden poner rótulos literales mezclados con los caracteres de transmisión.
Los caracteres de transmisión son precedidos de un % para distinguirlos de los normales:
Caracteres de transmisión Argumento que transmite
%c Int: un carácter simple
%Ns Char *: una cadena de caracteres
%Nd %Ni Int: un número decimal
%o Int: octal sinsigno
%x %X Int: hexadecimal sin signo
%Nu Int: decimal sin signo
%N.Df Float o double con D decimales, en notación fija
%N.De %N.DE Float o double con D decimales, en notación científica
%N.Dg %N.DG Float o double en notación científica si el exponente es menor de diez a la menos cuatro, o fija en caso contrario.
%p Void *: escribe el número que correspondeal puntero
%% Escribe un signo de %
Donde aparecen las letras N.D o no se pone nada o serán en realidad dos números que dicen que la transmisión total del valor al menos ocupará N posiciones (si el número necesita más de N las tomará, si usa menos las dejara en blancos, a menos que se quiera rellenar con ceros, entonces se pone 0N) y que la parte decimal tendrá como máximo las Dposiciones después de un punto.
Normalmente el número se ajusta por la derecha para el campo de N posiciones que le hemos dicho que utilice; si deseamos el ajuste por la izquierda, se añade un signo menos precediendo al valor N (-N).
• ComponentOne Studio Suite Custom components for.NET, ASP.NET, WPF, Silverlight, Mobile & ActiveX
www.componentone.comEnlaces patrocinados
Una l precediendo a N(p.e. %l5d) significa que transmitiremos un long int : si, por el contrario, es una h significa que transmitiremos un short int.
Existe otro tipo de carácter especial, los caracteres de escape, que tienen un significado especial. Los caracteres de escape son los siguientes:
\n Nueva línea
\t Tabulador
\b Espacio atrás
\r Retorno de carro
\f Comienzo de página
\a Pitido sonoro
\¿Comilla simple
" Comilla doble
\ Barra invertida
\xdd Código ASCII en notación hexadecimal (cada d representa un dígito)
\ddd Código ASCII en notación octal (cada d representa un dígito)
La lista de argumentos estará separada por comas. Debe existir una correspondencia biyectiva entre los caracteres de transmisión (aquellos que comienzan con un %) y la lista de argumentos a transmitir.
Cabe...
tracking img