Categorías destacadas
programacion php    
Artículo
7
¡votar!

 Lenguaje C


Funciones de entrada/salida

En este apartado y los siguientes vamos a ver algunas de las funciones más importantes que nos proporcionan las librerías definidas por ANSI y su utilización. Como hemos visto hasta ahora, el lenguaje C no proporciona ningún mecanismo de comunicación ni con el usuario ni con el sistema operativo. Ello es realizado a través de las funciones de librería proporcionadas por el compilador.

El fichero de declaraciones que normalmente más se utiliza es el stdio.h. Vamos a ver algunas funciones definidas en él.

Una función que ya hemos utilizado y que, ella y sus variantes, es la más utilizadas para la salida de información es printf. Esta permite dar formato y enviar datos a la salida estándar del sistema operativo.

#include <stdio.h>

int printf ( const char *format [, argumentos, ...] );

Acepta un string de formato y cualquier número de argumentos. Estos argumentos se aplican a cada uno de los especificadores de formato contenidos en format. Un especificador de formato toma la forma %[flags][width][.prec][h|l] type. El tipo puede ser:

Tipo Descripción
d, i Entero decimal con signo
o Entero octal sin signo
u Entero decimal sin signo
x Entero hexadecimal sin signo (en minúsculas)
X Entero hexadecimal sin signo (en mayúsculas)
f Coma flotante en la forma [-]dddd.dddd
e Coma flotante en la forma [-]d.dddd e[+/-]ddd
g Coma flotante según el valor
E Como e pero en mayúsculas
G Como g pero en mayúsculas
c Un carácter
s Cadena de caracteres terminada en '\0'
% Imprime el carácter %
p Puntero

Los flags pueden ser los caracteres:

Modificador Descripción
+ Siempre se imprime el signo, tanto + como -
- Justifica a la izquierda el resultado, añadiendo espacios al final
blank Si es positivo, imprime un espacio en lugar de un signo +
# Especifica la forma alternativa

En el campo width se especifica la anchura mínima de la forma:

Modificador Descripción
n Se imprimen al menos n caracteres.
0n Se imprimen al menos n caracteres y si la salida es menor, se anteponen ceros
* La lista de parámetros proporciona el valor

Hay dos modificadores de tamaño, para los tipos enteros:

Modificador Descripción
l Imprime un entero long
h Imprime un entero short

Otra función similar a printf pero para la entrada de datos es scanf. Esta toma los datos de la entrada estándar del sistema operativo. En este caso, la lista de argumentos debe estar formada por punteros, que indican dónde depositar los valores.

#include <stdio.h>

int scanf ( const char *format [, argumentos, ...] );

Hay dos funciones que trabajan con strings. La primera lee un string de la entrada estándar y la segunda lo imprime en el dispositivo de salida estándar.

#include <stdio.h>

char *gets ( char *s );
int puts ( char *s );

También hay funciones de lectura y escritura de caracteres individuales.

#include <stdio.h>

int getchar ( void );
int putchar ( int c );

Veamos, por ejemplo, un programa que copia la entrada estándar a la salida estándar del sistema operativo, carácter a carácter.

#include <stdio.h>

main()
{
  int c;
  while ( (c = getchar()) != EOF )
    putchar(c);
}
 
Publicado por:
Luis Raymundo
Recomendar
a un amigo
Compartir
en redes
 
Comentarios
 
BBDD
Entornos de desarrollo
Entretenimiento
Herramientas
Internet
Lenguajes de script
Lenguajes imperativos
Lenguajes orientados a objeto
Otros lenguajes
Plataformas
Teoría
Varios
Copyright © 1998-2011 Programación en Castellano. Todos los derechos reservados
Datos legales | Politica de privacidad | Contacte con nosotros | Publicidad

Diseño web y desarrollo web. Un proyecto de los hermanos Carrero.

Red internet:
Juegos gratis | Servidores dedicados
Más internet: Password | Directorio de weblogs | Favicon